FIRE-5450: IM tab not flashing for conference chats if chat was initiated by oneself
Conference chats are initiated with a randomly generated UUID by the initiator. The server then creates a new UUID and notifies the viewer about it. Need to make sure our FSFloaterIMContainer then updates the session ID in its list of sessions properly.
parent
8d1d49a2de
commit
89a6662c41
|
|
@ -471,4 +471,16 @@ void FSFloaterIMContainer::checkFlashing()
|
|||
gToolBarView->flashCommand(LLCommandId("chat"), false);
|
||||
}
|
||||
}
|
||||
|
||||
void FSFloaterIMContainer::sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id)
|
||||
{
|
||||
avatarID_panel_map_t::iterator found = mSessions.find(old_session_id);
|
||||
if (found != mSessions.end())
|
||||
{
|
||||
LLFloater* floaterp = found->second;
|
||||
mSessions.erase(found);
|
||||
mSessions[new_session_id] = floaterp;
|
||||
}
|
||||
}
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ public:
|
|||
virtual void sessionActivated(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id) {};
|
||||
virtual void sessionVoiceOrIMStarted(const LLUUID& session_id) {};
|
||||
virtual void sessionRemoved(const LLUUID& session_id);
|
||||
virtual void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id) {};
|
||||
virtual void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id);
|
||||
|
||||
static void reloadEmptyFloaters();
|
||||
void initTabs();
|
||||
|
|
|
|||
Loading…
Reference in New Issue