Skip to content
Snippets Groups Projects
Commit 2094847b authored by Mike Antipov's avatar Mike Antipov
Browse files

Work on normal bug EXT-3434 There is no difference between invited and left...

Work on normal bug EXT-3434 	There is no difference between invited and left participants in a Group call (Voice Controls)
-- commented out updating participants voice states from draw()
-- improved removing of HAS LEFT participant (now it is removed via LLAvatarList approach instead of LLFlatListView)

--HG--
branch : product-engine
parent c6e24e53
No related branches found
No related tags found
No related merge requests found
...@@ -174,7 +174,11 @@ void LLCallFloater::draw() ...@@ -174,7 +174,11 @@ void LLCallFloater::draw()
// It should be done only when she joins or leaves voice chat. // It should be done only when she joins or leaves voice chat.
// But seems that LLVoiceClientParticipantObserver is not enough to satisfy this requirement. // But seems that LLVoiceClientParticipantObserver is not enough to satisfy this requirement.
// *TODO: mantipov: remove from draw() // *TODO: mantipov: remove from draw()
onChange();
// NOTE: it looks like calling onChange() here is not necessary,
// but sometime it is not called properly from the observable object.
// Seems this is a problem somewhere in Voice Client (LLVoiceClient::participantAddedEvent)
// onChange();
bool is_moderator_muted = gVoiceClient->getIsModeratorMuted(gAgentID); bool is_moderator_muted = gVoiceClient->getIsModeratorMuted(gAgentID);
...@@ -641,7 +645,13 @@ void LLCallFloater::removeVoiceLeftParticipant(const LLUUID& voice_speaker_id) ...@@ -641,7 +645,13 @@ void LLCallFloater::removeVoiceLeftParticipant(const LLUUID& voice_speaker_id)
mVoiceLeftTimersMap.erase(mVoiceLeftTimersMap.find(voice_speaker_id)); mVoiceLeftTimersMap.erase(mVoiceLeftTimersMap.find(voice_speaker_id));
} }
mAvatarList->removeItemByUUID(voice_speaker_id); LLAvatarList::uuid_vector_t& speaker_uuids = mAvatarList->getIDs();
LLAvatarList::uuid_vector_t::iterator pos = std::find(speaker_uuids.begin(), speaker_uuids.end(), voice_speaker_id);
if(pos != speaker_uuids.end())
{
speaker_uuids.erase(pos);
mAvatarList->setDirty();
}
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment