diff options
author | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-01-05 17:56:45 +0200 |
---|---|---|
committer | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-01-05 17:56:45 +0200 |
commit | 4a333f37317e6a793c953e0db6465bb8b6ec164c (patch) | |
tree | 37b14711c3d51e60989502f410fe96bb342e8fd1 /indra/newview/llimfloater.cpp | |
parent | 71c0973a1eec0a58fcb143b268ac1069d16a4adb (diff) | |
parent | 0b51078da2f8c0a69791f8737d74d9330ef91eee (diff) |
merge
--HG--
branch : product-engine
Diffstat (limited to 'indra/newview/llimfloater.cpp')
-rw-r--r-- | indra/newview/llimfloater.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 259f629bdd..fdc5d14d97 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -120,6 +120,12 @@ void LLIMFloater::onFocusLost() void LLIMFloater::onFocusReceived() { LLIMModel::getInstance()->setActiveSessionID(mSessionID); + + // return focus to the input field when active tab in the multitab container is clicked. + if (isChatMultiTab() && mInputEditor) + { + mInputEditor->setFocus(TRUE); + } } // virtual @@ -618,6 +624,15 @@ void LLIMFloater::onInputEditorFocusReceived( LLFocusableElement* caller, void* //in disconnected state IM input editor should be disabled self->mInputEditor->setEnabled(!gDisconnected); } + + // when IM Floater is a part of the multitab container LLTabContainer set focus to the first + // child on tab button's mouse up. This leads input field lost focus. See EXT-3852. + if (isChatMultiTab()) + { + // So, clear control captured mouse to prevent LLTabContainer set focus on the panel's first child. + // do not pass self->mInputEditor, this leads to have "Edit Text" mouse pointer wherever it is. + gFocusMgr.setMouseCapture(NULL); + } } // static |