summaryrefslogtreecommitdiff
path: root/indra/newview/llconversationloglist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llconversationloglist.cpp')
-rw-r--r--indra/newview/llconversationloglist.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/indra/newview/llconversationloglist.cpp b/indra/newview/llconversationloglist.cpp
index 94be9055bd..d39e090c22 100644
--- a/indra/newview/llconversationloglist.cpp
+++ b/indra/newview/llconversationloglist.cpp
@@ -141,6 +141,28 @@ void LLConversationLogList::changed()
refresh();
}
+void LLConversationLogList::changed(const LLUUID& session_id, U32 mask)
+{
+ if (mask & LLConversationLogObserver::VOICE_STATE)
+ {
+ std::vector<LLPanel*> panels;
+ LLFlatListViewEx::getItems(panels);
+
+ std::vector<LLPanel*>::iterator iter = panels.begin();
+
+ for (; iter != panels.end(); ++iter)
+ {
+ LLConversationLogListItem* item = dynamic_cast<LLConversationLogListItem*>(*iter);
+
+ if (item && session_id == item->getConversation()->getSessionID() && !item->getConversation()->isConversationPast())
+ {
+ item->initIcons();
+ return;
+ }
+ }
+ }
+}
+
void LLConversationLogList::addNewItem(const LLConversation* conversation)
{
LLConversationLogListItem* item = new LLConversationLogListItem(&*conversation);