diff options
author | Merov Linden <merov@lindenlab.com> | 2010-10-20 20:56:15 -0700 |
---|---|---|
committer | Merov Linden <merov@lindenlab.com> | 2010-10-20 20:56:15 -0700 |
commit | 71f56a2bc9697989cd012adb57abdc922aa8ae0a (patch) | |
tree | 027fb9db4ee81f7f908c8153c7f0628ac3aaac2f /indra | |
parent | 187093eb9d82467852d3297411a9370d4e8c81e9 (diff) | |
parent | b8444e52c1e52aabe86c84442abee90c1e4479f0 (diff) |
STORM-402 : merge with viewer-development
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llimview.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index c865dcf9a3..fe8a46e908 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -1049,17 +1049,27 @@ void LLIMModel::sendMessage(const std::string& utf8_text, if( session == 0)//??? shouldn't really happen { LLRecentPeople::instance().add(other_participant_id); + return; } - else + // IM_SESSION_INVITE means that this is an Ad-hoc incoming chat + // (it can be also Group chat but it is checked above) + // In this case mInitialTargetIDs contains Ad-hoc session ID and it should not be added + // to Recent People to prevent showing of an item with (???)(???). See EXT-8246. + // Concrete participants will be added into this list once they sent message in chat. + if (IM_SESSION_INVITE == dialog) return; + + if (IM_SESSION_CONFERENCE_START == dialog) // outgoing ad-hoc session { - // IM_SESSION_INVITE means that this is an Ad-hoc incoming chat - // (it can be also Group chat but it is checked above) - // In this case mInitialTargetIDs contains Ad-hoc session ID and it should not be added - // to Recent People to prevent showing of an item with (???)(???). See EXT-8246. - // Concrete participants will be added into this list once they sent message in chat. - if (IM_SESSION_INVITE == dialog) return; - // Add only online members to recent (EXT-8658) - addSpeakersToRecent(im_session_id); + // Add only online members of conference to recent list (EXT-8658) + addSpeakersToRecent(im_session_id); + } + else // outgoing P2P session + { + // Add the recepient of the session. + if (!session->mInitialTargetIDs.empty()) + { + LLRecentPeople::instance().add(*(session->mInitialTargetIDs.begin())); + } } } } |