diff options
author | Merov Linden <merov@lindenlab.com> | 2012-09-24 19:55:31 -0700 |
---|---|---|
committer | Merov Linden <merov@lindenlab.com> | 2012-09-24 19:55:31 -0700 |
commit | 5b0e06108b3c4373c55103dedab3306f06d392c9 (patch) | |
tree | 0751aa10cafd8afdde0a48586214a51da8fff750 /indra/newview | |
parent | 552f288a0caea45e30a231478a19f4243d69689c (diff) |
CHUI-340 : Fix dupe items in the conversation model list. Refresh when resorting.
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/llconversationmodel.cpp | 4 | ||||
-rwxr-xr-x | indra/newview/llimfloatercontainer.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llparticipantlist.cpp | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/indra/newview/llconversationmodel.cpp b/indra/newview/llconversationmodel.cpp index b0d691fa13..a94d82bf7c 100644 --- a/indra/newview/llconversationmodel.cpp +++ b/indra/newview/llconversationmodel.cpp @@ -217,7 +217,7 @@ const bool LLConversationItemSession::getTime(F64& time) const void LLConversationItemSession::dumpDebugData() { - llinfos << "Merov debug : session, uuid = " << mUUID << ", name = " << mName << ", is loaded = " << mIsLoaded << llendl; + llinfos << "Merov debug : session " << this << ", uuid = " << mUUID << ", name = " << mName << ", is loaded = " << mIsLoaded << llendl; LLConversationItemParticipant* participant = NULL; child_list_t::iterator iter; for (iter = mChildren.begin(); iter != mChildren.end(); iter++) @@ -262,7 +262,7 @@ void LLConversationItemParticipant::onAvatarNameCache(const LLAvatarName& av_nam void LLConversationItemParticipant::dumpDebugData() { - llinfos << "Merov debug : participant, uuid = " << mUUID << ", name = " << mName << ", muted = " << mIsMuted << ", moderator = " << mIsModerator << llendl; + llinfos << "Merov debug : participant " << this << ", uuid = " << mUUID << ", name = " << mName << ", muted = " << mIsMuted << ", moderator = " << mIsModerator << llendl; } // diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index cd56ea6081..14d40d4685 100755 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -394,6 +394,8 @@ void LLIMFloaterContainer::draw() } // Reset the need for refresh session_model->resetRefresh(); + mConversationViewModel.requestSortAll(); + mConversationsRoot->arrangeAll(); // Next participant current_participant_model++; } diff --git a/indra/newview/llparticipantlist.cpp b/indra/newview/llparticipantlist.cpp index 09f2716773..90226e7fba 100644 --- a/indra/newview/llparticipantlist.cpp +++ b/indra/newview/llparticipantlist.cpp @@ -678,8 +678,10 @@ void LLParticipantList::sort() void LLParticipantList::addAvatarIDExceptAgent(const LLUUID& avatar_id) { + // Do not add if already in there or excluded for some reason if (mExcludeAgent && gAgent.getID() == avatar_id) return; if (mAvatarList && mAvatarList->contains(avatar_id)) return; + if (findParticipant(avatar_id)) return; bool is_avatar = LLVoiceClient::getInstance()->isParticipantAvatar(avatar_id); |