diff options
author | richard <none@none> | 2009-12-17 10:03:56 -0800 |
---|---|---|
committer | richard <none@none> | 2009-12-17 10:03:56 -0800 |
commit | 724f5fbb7f7b101774c0cf3ff43bb98f9cc4ffc1 (patch) | |
tree | bfb7b4009b32761f9f760f97dd97cc0697667a71 /indra/newview/llimfloater.cpp | |
parent | 9ff869a6b287a2b4b8c94219584d1c7b66ebb399 (diff) | |
parent | cf63ce4dc1176d9df4fe852821e4a6d32332f7c6 (diff) |
merge
Diffstat (limited to 'indra/newview/llimfloater.cpp')
-rw-r--r-- | indra/newview/llimfloater.cpp | 19 |
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(); +} |