diff options
| author | Mike Antipov <mantipov@productengine.com> | 2010-05-10 10:45:43 +0300 | 
|---|---|---|
| committer | Mike Antipov <mantipov@productengine.com> | 2010-05-10 10:45:43 +0300 | 
| commit | 9027f4430ddd9817f40b59c463d81a8cc3783c58 (patch) | |
| tree | 6a28780961671930f17663ffa97bc0dd8b70af29 /indra | |
| parent | 73e6407af8f802bbc4a3932bc5ac32ca8f13ab56 (diff) | |
EXT-7095 FIXED Replaced voice moderation menu items and updated related actions.
* Replaced "Un/Mute everyone else" menu items with requested ones. They are enabled only on participants in Voice session (are shown for moderators)
* Actions implemented via existent "Un/Mute everyone else" functionality where "else" is NULL item.
Known issues:
 * It is impossible to perform the same "Un/Mute everyone" action is session is already in requested state:  EXT-6937
 * If voice is disabled in a group session not all muted participants have appropriate indicator in VCP if resident joins to the session.
    Due to this is the same behavior as before current patch is provided, a separate EXT-7235 bug is filed for this.
--HG--
branch : product-engine
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/llparticipantlist.cpp | 9 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_participant_list.xml | 18 | 
2 files changed, 13 insertions, 14 deletions
diff --git a/indra/newview/llparticipantlist.cpp b/indra/newview/llparticipantlist.cpp index 8c908449a0..2141f43758 100644 --- a/indra/newview/llparticipantlist.cpp +++ b/indra/newview/llparticipantlist.cpp @@ -674,12 +674,10 @@ void LLParticipantList::LLParticipantListMenu::show(LLView* spawning_view, const  	if (is_muted)  	{  		LLMenuGL::sMenuContainer->childSetVisible("ModerateVoiceMuteSelected", false); -		LLMenuGL::sMenuContainer->childSetVisible("ModerateVoiceMuteOthers", false);  	}  	else  	{  		LLMenuGL::sMenuContainer->childSetVisible("ModerateVoiceUnMuteSelected", false); -		LLMenuGL::sMenuContainer->childSetVisible("ModerateVoiceUnMuteOthers", false);  	}  } @@ -784,16 +782,17 @@ void LLParticipantList::LLParticipantListMenu::moderateVoice(const LLSD& userdat  	if (!gAgent.getRegion()) return;  	bool moderate_selected = userdata.asString() == "selected"; -	const LLUUID& selected_avatar_id = mUUIDs.front(); -	bool is_muted = isMuted(selected_avatar_id);  	if (moderate_selected)  	{ +		const LLUUID& selected_avatar_id = mUUIDs.front(); +		bool is_muted = isMuted(selected_avatar_id);  		moderateVoiceParticipant(selected_avatar_id, is_muted);  	}  	else  	{ -		moderateVoiceOtherParticipants(selected_avatar_id, is_muted); +		bool unmute_all = userdata.asString() == "unmute_all"; +		moderateVoiceOtherParticipants(LLUUID::null, unmute_all);  	}  } diff --git a/indra/newview/skins/default/xui/en/menu_participant_list.xml b/indra/newview/skins/default/xui/en/menu_participant_list.xml index 6a90e92eca..f126431263 100644 --- a/indra/newview/skins/default/xui/en/menu_participant_list.xml +++ b/indra/newview/skins/default/xui/en/menu_participant_list.xml @@ -160,34 +160,34 @@               parameter="can_moderate_voice" />          </menu_item_call>          <menu_item_call -         label="Mute everyone else" +         label="Unmute this participant"           layout="topleft" -         name="ModerateVoiceMuteOthers"> +         name="ModerateVoiceUnMuteSelected">              <on_click               function="ParticipantList.ModerateVoice" -             parameter="others" /> +             parameter="selected" />              <on_enable               function="ParticipantList.EnableItem.Moderate"               parameter="can_moderate_voice" />          </menu_item_call>          <menu_item_call -         label="Unmute this participant" +         label="Mute everyone"           layout="topleft" -         name="ModerateVoiceUnMuteSelected"> +         name="ModerateVoiceMute">              <on_click               function="ParticipantList.ModerateVoice" -             parameter="selected" /> +             parameter="mute_all" />              <on_enable               function="ParticipantList.EnableItem.Moderate"               parameter="can_moderate_voice" />          </menu_item_call>          <menu_item_call -         label="Unmute everyone else" +         label="Unmute everyone"           layout="topleft" -         name="ModerateVoiceUnMuteOthers"> +         name="ModerateVoiceUnmute">              <on_click               function="ParticipantList.ModerateVoice" -             parameter="others" /> +             parameter="unmute_all" />              <on_enable               function="ParticipantList.EnableItem.Moderate"               parameter="can_moderate_voice" />  | 
