summaryrefslogtreecommitdiff
path: root/indra/newview/llstartup.cpp
diff options
context:
space:
mode:
authorcoyot@coyot-sager-PC <coyot@coyot-sager-PC>2017-03-16 22:21:49 +0100
committercoyot@coyot-sager-PC <coyot@coyot-sager-PC>2017-03-16 22:21:49 +0100
commitfc56311ebf05d6d6c155e097bffbff9feb0c411f (patch)
tree56445b8c652b930dfc4cec7efe51d934d151eafb /indra/newview/llstartup.cpp
parent3a3da6e4a76859f32dc36491fde2992e92ae57b5 (diff)
parentd7f5122ee9e12b5aec14b15517c3a4c0021544ce (diff)
pull from viewer64 gate
Diffstat (limited to 'indra/newview/llstartup.cpp')
-rw-r--r--indra/newview/llstartup.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 50f4c7854e..19ec03f837 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -256,6 +256,7 @@ boost::scoped_ptr<LLViewerStats::PhaseMap> LLStartUp::sPhases(new LLViewerStats:
void login_show();
void login_callback(S32 option, void* userdata);
+void show_release_notes_if_required();
void show_first_run_dialog();
bool first_run_dialog_callback(const LLSD& notification, const LLSD& response);
void set_startup_status(const F32 frac, const std::string& string, const std::string& msg);
@@ -682,10 +683,17 @@ bool idle_startup()
}
else if (gSavedSettings.getBOOL("AutoLogin"))
{
+ // Log into last account
gRememberPassword = TRUE;
gSavedSettings.setBOOL("RememberPassword", TRUE);
show_connect_box = false;
}
+ else if (gSavedSettings.getLLSD("UserLoginInfo").size() == 3)
+ {
+ // Console provided login&password
+ gRememberPassword = gSavedSettings.getBOOL("RememberPassword");
+ show_connect_box = false;
+ }
else
{
gRememberPassword = gSavedSettings.getBOOL("RememberPassword");
@@ -709,6 +717,7 @@ bool idle_startup()
set_startup_status(0.03f, msg.c_str(), gAgent.mMOTD.c_str());
display_startup();
// LLViewerMedia::initBrowser();
+ show_release_notes_if_required();
LLStartUp::setStartupState( STATE_LOGIN_SHOW );
return FALSE;
}
@@ -2246,6 +2255,22 @@ void login_callback(S32 option, void *userdata)
}
}
+/**
+* Check if user is running a new version of the viewer.
+* Display the Release Notes if it's not overriden by the "UpdaterShowReleaseNotes" setting.
+*/
+void show_release_notes_if_required()
+{
+ if (LLVersionInfo::getChannelAndVersion() != gLastRunVersion
+ && LLVersionInfo::getViewerMaturity() != LLVersionInfo::TEST_VIEWER // don't show Release Notes for the test builds
+ && gSavedSettings.getBOOL("UpdaterShowReleaseNotes")
+ && !gSavedSettings.getBOOL("FirstLoginThisInstall"))
+ {
+ LLSD info(LLAppViewer::instance()->getViewerInfo());
+ LLWeb::loadURLInternal(info["VIEWER_RELEASE_NOTES_URL"]);
+ }
+}
+
void show_first_run_dialog()
{
LLNotificationsUtil::add("FirstRun", LLSD(), LLSD(), first_run_dialog_callback);