summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorYuri Chebotarev <ychebotarev@productengine.com>2009-12-15 13:22:09 +0200
committerYuri Chebotarev <ychebotarev@productengine.com>2009-12-15 13:22:09 +0200
commit50792b7c2a2fffd8d6fb99c1f5148e9881f0101d (patch)
tree4d0a4add98a448519c5671f00ca8d4e5a94011e1 /indra/newview
parentc157c1176a570ab61978063dcc8d0ce3fe31483d (diff)
fix for normal EXT-3252 IM well closes if the lower IM session has been closed
--HG-- branch : product-engine
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llsyswellwindow.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/indra/newview/llsyswellwindow.cpp b/indra/newview/llsyswellwindow.cpp
index 1ebf624eeb..c269e0b47e 100644
--- a/indra/newview/llsyswellwindow.cpp
+++ b/indra/newview/llsyswellwindow.cpp
@@ -752,6 +752,13 @@ void LLIMWellWindow::addIMRow(const LLUUID& sessionId, S32 chicletCounter,
//---------------------------------------------------------------------------------
void LLIMWellWindow::delIMRow(const LLUUID& sessionId)
{
+ //fix for EXT-3252
+ //without this line LLIMWellWindow receive onFocusLost
+ //and hide itself. It was becaue somehow LLIMChicklet was in focus group for
+ //LLIMWellWindow...
+ //But I didn't find why this happen..
+ gFocusMgr.clearLastFocusForGroup(this);
+
if (mMessageList->removeItemByValue(sessionId))
{
handleItemRemoved(IT_INSTANT_MESSAGE);
@@ -771,6 +778,10 @@ void LLIMWellWindow::delIMRow(const LLUUID& sessionId)
{
setVisible(FALSE);
}
+ else
+ {
+ setFocus(true);
+ }
}
void LLIMWellWindow::addObjectRow(const LLUUID& object_id, bool new_message/* = false*/)