summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/newview/llpanellogin.cpp6
-rw-r--r--indra/newview/llstartup.cpp2
2 files changed, 5 insertions, 3 deletions
diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp
index 78f3469f0e..ec0f8e303c 100644
--- a/indra/newview/llpanellogin.cpp
+++ b/indra/newview/llpanellogin.cpp
@@ -391,6 +391,10 @@ LLPanelLogin::~LLPanelLogin()
//// We know we're done with the image, so be rid of it.
//gTextureList.deleteImage( mLogoImage );
+
+ // Controls having keyboard focus by default
+ // must reset it on destroy. (EXT-2748)
+ gFocusMgr.setDefaultKeyboardFocus(NULL);
}
// virtual
@@ -682,8 +686,6 @@ void LLPanelLogin::closePanel()
if (sInstance)
{
gViewerWindow->getRootView()->removeChild( LLPanelLogin::sInstance );
-
- gFocusMgr.setDefaultKeyboardFocus(NULL);
delete sInstance;
sInstance = NULL;
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index d36ff1605e..736be67710 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -2153,7 +2153,7 @@ void login_callback(S32 option, void *userdata)
LLStartUp::setStartupState( STATE_LOGIN_CLEANUP );
return;
}
- else if (QUIT_OPTION == option)
+ else if (QUIT_OPTION == option) // *TODO: THIS CODE SEEMS TO BE UNREACHABLE!!!!! login_callback is never called with option equal to QUIT_OPTION
{
// Make sure we don't save the password if the user is trying to clear it.
std::string first, last, password;