summaryrefslogtreecommitdiff
path: root/indra/newview/llimconversation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llimconversation.cpp')
-rw-r--r--indra/newview/llimconversation.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llimconversation.cpp b/indra/newview/llimconversation.cpp
index 216c5bbd70..a2efe63546 100644
--- a/indra/newview/llimconversation.cpp
+++ b/indra/newview/llimconversation.cpp
@@ -215,11 +215,21 @@ void LLIMConversation::onFocusReceived()
}
LLTransientDockableFloater::onFocusReceived();
+
+ mHasFocus = mHaveFocus;
+ mHaveFocus = true;
+
+ if (! mHasFocus)
+ {
+ LLIMFloaterContainer* container = LLIMFloaterContainer::getInstance();
+ container->setConvItemSelect(mSessionID);
+ }
}
void LLIMConversation::onFocusLost()
{
setBackgroundOpaque(false);
+ mHaveFocus = false;
LLTransientDockableFloater::onFocusLost();
}
@@ -371,6 +381,9 @@ void LLIMConversation::hideAllStandardButtons()
void LLIMConversation::updateHeaderAndToolbar()
{
+ // prevent start conversation before its container
+ LLIMFloaterContainer::getInstance();
+
bool is_torn_off = !getHost();
if (!is_torn_off)
{