From 8eb015666e0224574013d1338ddaf70a19355e5e Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Date: Thu, 11 Sep 2025 20:38:09 +0300
Subject: #4651 Handle window's sessions termination
---
indra/newview/llviewerwindow.cpp | 35 ++++++++++++++++++++++++++++++-----
1 file changed, 30 insertions(+), 5 deletions(-)
(limited to 'indra/newview/llviewerwindow.cpp')
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index 0edb7c70ea..42ad82d731 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -1461,18 +1461,43 @@ void LLViewerWindow::handleMouseLeave(LLWindow *window)
LLToolTipMgr::instance().blockToolTips();
}
-bool LLViewerWindow::handleCloseRequest(LLWindow *window)
+bool LLViewerWindow::handleCloseRequest(LLWindow *window, bool from_user)
{
if (!LLApp::isExiting() && !LLApp::isStopped())
{
- // User has indicated they want to close, but we may need to ask
- // about modified documents.
- LLAppViewer::instance()->userQuit();
- // Don't quit immediately
+ if (from_user)
+ {
+ // User has indicated they want to close, but we may need to ask
+ // about modified documents.
+ LLAppViewer::instance()->userQuit();
+ // Don't quit immediately
+ }
+ else
+ {
+ // OS is asking us to quit, assume we have time and start cleanup
+ LLAppViewer::instance()->requestQuit();
+ }
}
return false;
}
+bool LLViewerWindow::handleSessionExit(LLWindow* window)
+{
+ if (!LLApp::isExiting() && !LLApp::isStopped())
+ {
+ // Viewer received WM_ENDSESSION and app will be killed soon if it doesn't respond
+ LLAppViewer* app = LLAppViewer::instance();
+ app->sendSimpleLogoutRequest();
+ app->earlyExitNoNotify();
+
+ // Not viewer's fault, remove marker files so
+ // that statistics won't consider this to be a crash
+ app->removeMarkerFiles();
+ return false;
+ }
+ return true;
+}
+
void LLViewerWindow::handleQuit(LLWindow *window)
{
if (gNonInteractive)
--
cgit v1.3
From 6fc138dc44b963254a9c26562f5ef50256fb6f1d Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com>
Date: Wed, 8 Oct 2025 22:25:31 +0300
Subject: p#351 Mark RenderMaxOpenGLVersion as Windows specific
---
indra/newview/app_settings/settings.xml | 2 +-
indra/newview/llviewerwindow.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
(limited to 'indra/newview/llviewerwindow.cpp')
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index c99e6fd612..ac79223738 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -7863,7 +7863,7 @@
RenderMaxOpenGLVersion
- DisableMouseWarp
+ MouseWarpMode
DisableExternalBrowser