summaryrefslogtreecommitdiff
path: root/indra/newview/llimfloater.cpp
diff options
context:
space:
mode:
authorskolb <none@none>2009-12-15 13:31:18 -0800
committerskolb <none@none>2009-12-15 13:31:18 -0800
commitdc9a62b5ab71868c6e9d3ff5c25a773a1135e974 (patch)
treec1f26801e3a1aa5cbbf7a918d5871bd0616442ac /indra/newview/llimfloater.cpp
parent589472a4e91d61b70d1f4184fc1c8e7918fb5606 (diff)
parent89a8182c2cd8d04b85c70d82f654714b83afebb8 (diff)
Merge
Diffstat (limited to 'indra/newview/llimfloater.cpp')
-rw-r--r--indra/newview/llimfloater.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp
index 47a168e354..7dc21e6e23 100644
--- a/indra/newview/llimfloater.cpp
+++ b/indra/newview/llimfloater.cpp
@@ -469,7 +469,7 @@ bool LLIMFloater::toggle(const LLUUID& session_id)
if(!isChatMultiTab())
{
LLIMFloater* floater = LLFloaterReg::findTypedInstance<LLIMFloater>("impanel", session_id);
- if (floater && floater->getVisible() && floater->isDocked())
+ if (floater && floater->getVisible())
{
// clicking on chiclet to close floater just hides it to maintain existing
// scroll/text entry state
@@ -947,3 +947,20 @@ void LLIMFloater::initIMFloater()
// init chat window type before user changed it in preferences
isChatMultiTab();
}
+
+//static
+void LLIMFloater::sRemoveTypingIndicator(const LLSD& data)
+{
+ LLUUID session_id = data["session_id"];
+ if (session_id.isNull()) return;
+
+ LLUUID from_id = data["from_id"];
+ if (gAgentID == from_id || LLUUID::null == from_id) return;
+
+ LLIMFloater* floater = LLIMFloater::findInstance(session_id);
+ if (!floater) return;
+
+ if (IM_NOTHING_SPECIAL != floater->mDialog) return;
+
+ floater->removeTypingIndicator();
+}