summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorRichard Linden <none@none>2010-10-08 17:38:19 -0700
committerRichard Linden <none@none>2010-10-08 17:38:19 -0700
commitc25216ca3a1bc4bd7a88a2519fe156a00902e85c (patch)
tree44dee6f5dbfd63531f66595503490ca2a3c9028e /indra/newview
parentf65bd3c1f18675910c9d49db217a1926bd04494e (diff)
parent77d1fa974ad6cc9be0b84e574b455693bfa7f702 (diff)
merge
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/settings.xml11
-rw-r--r--indra/newview/llappviewer.cpp14
-rw-r--r--indra/newview/llappviewer.h1
-rw-r--r--indra/newview/llappviewerwin32.cpp6
-rw-r--r--indra/newview/llpanelprimmediacontrols.cpp2
-rw-r--r--indra/newview/llprogressview.cpp2
6 files changed, 34 insertions, 2 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index f9d930a13a..1c7e391ccb 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -2985,6 +2985,17 @@
<key>Value</key>
<integer>0</integer>
</map>
+ <key>FastQuit</key>
+ <map>
+ <key>Comment</key>
+ <string>Quits as quickly as possible, only sending logout request before forcefully terminating. Use with care, as this might result in data corruption or loss.</string>
+ <key>Persist</key>
+ <integer>1</integer>
+ <key>Type</key>
+ <string>Boolean</string>
+ <key>Value</key>
+ <integer>0</integer>
+ </map>
<key>FeatureManagerHTTPTable</key>
<map>
<key>Comment</key>
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index e6661e4c9a..91fae709df 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -2879,8 +2879,22 @@ void LLAppViewer::forceQuit()
LLApp::setQuitting();
}
+void LLAppViewer::fastQuit()
+{
+ if (LLStartUp::getStartupState() >= STATE_STARTED)
+ {
+ sendLogoutRequest();
+ }
+ _exit(isError());
+}
+
void LLAppViewer::requestQuit()
{
+ if (gSavedSettings.getBOOL("FastQuit"))
+ {
+ fastQuit();
+ }
+
llinfos << "requestQuit" << llendl;
LLViewerRegion* region = gAgent.getRegion();
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h
index b0f8c1dc3d..62ebd0712e 100644
--- a/indra/newview/llappviewer.h
+++ b/indra/newview/llappviewer.h
@@ -66,6 +66,7 @@ public:
// Application control
void forceQuit(); // Puts the viewer into 'shutting down without error' mode.
+ void fastQuit(); // Shuts down the viewer immediately after sending a logout message
void requestQuit(); // Request a quit. A kinder, gentler quit.
void userQuit(); // The users asks to quit. Confirm, then requestQuit()
void earlyExit(const std::string& name,
diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp
index d328567a0e..2c6f014d17 100644
--- a/indra/newview/llappviewerwin32.cpp
+++ b/indra/newview/llappviewerwin32.cpp
@@ -175,6 +175,12 @@ int APIENTRY WINMAIN(HINSTANCE hInstance,
viewer_app_ptr->mainLoop();
}
+ if (gSavedSettings.getBOOL("FastQuit"))
+ {
+ viewer_app_ptr->fastQuit();
+ }
+
+
if (!LLApp::isError())
{
//
diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp
index de2428feed..614700fb0a 100644
--- a/indra/newview/llpanelprimmediacontrols.cpp
+++ b/indra/newview/llpanelprimmediacontrols.cpp
@@ -519,7 +519,7 @@ void LLPanelPrimMediaControls::updateShape()
if(LLPluginClassMediaOwner::MEDIA_LOADING == media_plugin->getStatus())
{
mMediaProgressPanel->setVisible(true);
- mMediaProgressBar->setPercent(media_plugin->getProgressPercent());
+ mMediaProgressBar->setValue(media_plugin->getProgressPercent());
}
else
{
diff --git a/indra/newview/llprogressview.cpp b/indra/newview/llprogressview.cpp
index e9504cbba0..db02d76139 100644
--- a/indra/newview/llprogressview.cpp
+++ b/indra/newview/llprogressview.cpp
@@ -207,7 +207,7 @@ void LLProgressView::setText(const std::string& text)
void LLProgressView::setPercent(const F32 percent)
{
- mProgressBar->setPercent(percent);
+ mProgressBar->setValue(percent);
}
void LLProgressView::setMessage(const std::string& msg)