diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
index 5bd58e9ae4..8c5069a289 100644
--- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
+++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
@@ -23,12 +23,15 @@ with BigBlueButton; if not, see .
+
+
.
import org.bigbluebutton.common.Images;
import org.bigbluebutton.core.EventConstants;
+ import org.bigbluebutton.main.events.BBBEvent;
import org.bigbluebutton.core.events.CoreEvent;
import org.bigbluebutton.core.events.VoiceConfEvent;
import org.bigbluebutton.core.UsersUtil;
@@ -60,6 +64,13 @@ with BigBlueButton; if not, see .
private const TITLE_BACKGROUND_TALKING:uint = 0x20c600;
private const TITLE_BACKGROUND_NOT_TALKING:uint = 0x42444c;
+ private var _hideMuteBtnTimer:Timer;
+
+ protected function init():void {
+ _hideMuteBtnTimer = new Timer(500, 1);
+ _hideMuteBtnTimer.addEventListener(TimerEvent.TIMER, onHideMuteBtnTimerComplete);
+ }
+
protected function onCreationComplete():void {
}
@@ -174,9 +185,11 @@ with BigBlueButton; if not, see .
}
if (_rolledOverCanvas || _rolledOverMuteBtn) {
- muteBtnWrapper.visible = user.voiceJoined;
+ // muteBtnWrapper.visible = user.voiceJoined;
+ setMuteBtnVisibility(user.voiceJoined);
} else {
- muteBtnWrapper.visible = user.voiceJoined && user.voiceMuted;
+ // muteBtnWrapper.visible = user.voiceJoined && user.voiceMuted;
+ setMuteBtnVisibility(user.voiceJoined && user.voiceMuted);
}
var userIconVisibility:Boolean;
@@ -212,9 +225,40 @@ with BigBlueButton; if not, see .
}
}
+ private function handleUserVoiceChangedEvent(event:BBBEvent):void {
+ if (user && event.payload.userID == user.userID) {
+ updateButtons();
+ }
+ }
+
+ private function onHideMuteBtnTimerComplete(event:TimerEvent):void {
+ muteBtnWrapper.visible = false;
+ }
+
+ private function setMuteBtnVisibility(visible:Boolean):void {
+ if (visible) {
+ showMuteBtn();
+ } else {
+ hideMuteBtn();
+ }
+ }
+
+ private function hideMuteBtn():void {
+ _hideMuteBtnTimer.reset();
+ _hideMuteBtnTimer.start();
+ }
+
+ private function showMuteBtn():void {
+ _hideMuteBtnTimer.reset();
+ muteBtnWrapper.visible = true;
+ }
+
]]>
+
+
+
@@ -250,7 +294,8 @@ with BigBlueButton; if not, see .
verticalScrollPolicy="off" >
+ visible="false"
+ hideEffect="{fadeOut}" showEffect="{fadeIn}" >