From e81d3c02adb77a5c1baec26f9743c7d3dcf5884f Mon Sep 17 00:00:00 2001 From: damencho Date: Mon, 8 Feb 2016 15:41:04 -0600 Subject: [PATCH] Shows dominant speaker icon for the local user, when he is the dominant speaker. --- modules/UI/videolayout/RemoteVideo.js | 35 --------------------------- modules/UI/videolayout/SmallVideo.js | 34 ++++++++++++++++++++++++++ modules/UI/videolayout/VideoLayout.js | 2 ++ 3 files changed, 36 insertions(+), 35 deletions(-) diff --git a/modules/UI/videolayout/RemoteVideo.js b/modules/UI/videolayout/RemoteVideo.js index 553bd6e0b..99abdaaa1 100644 --- a/modules/UI/videolayout/RemoteVideo.js +++ b/modules/UI/videolayout/RemoteVideo.js @@ -342,41 +342,6 @@ RemoteVideo.prototype.updateRemoteVideoMenu = function (isMuted) { } }; -/** - * Updates the Indicator for dominant speaker. - * - * @param isSpeaker indicates the current indicator state - */ -RemoteVideo.prototype.updateDominantSpeakerIndicator = function (isSpeaker) { - - if (!this.container) { - console.warn( "Unable to set dominant speaker indicator - " - + this.videoSpanId + " does not exist"); - return; - } - - var indicatorSpan - = $('#' + this.videoSpanId + '>span.dominantspeakerindicator'); - - // If we do not have an indicator for this video. - if (indicatorSpan.length <= 0) { - indicatorSpan = document.createElement('span'); - - indicatorSpan.innerHTML - = ""; - indicatorSpan.className = 'dominantspeakerindicator'; - - $('#' + this.videoSpanId)[0].appendChild(indicatorSpan); - - // adds a tooltip - UIUtils.setTooltip(indicatorSpan, "speaker", "left"); - APP.translation.translateElement($(indicatorSpan)); - } - - $(indicatorSpan).css("visibility", isSpeaker ? "visible" : "hidden"); -}; - - /** * Sets the display name for the given video span id. */ diff --git a/modules/UI/videolayout/SmallVideo.js b/modules/UI/videolayout/SmallVideo.js index b187cdd39..83cb40ec1 100644 --- a/modules/UI/videolayout/SmallVideo.js +++ b/modules/UI/videolayout/SmallVideo.js @@ -382,4 +382,38 @@ SmallVideo.prototype.avatarChanged = function (avatarUrl) { } }; +/** + * Updates the Indicator for dominant speaker. + * + * @param isSpeaker indicates the current indicator state + */ +SmallVideo.prototype.updateDominantSpeakerIndicator = function (isSpeaker) { + + if (!this.container) { + console.warn( "Unable to set dominant speaker indicator - " + + this.videoSpanId + " does not exist"); + return; + } + + var indicatorSpan + = $('#' + this.videoSpanId + '>span.dominantspeakerindicator'); + + // If we do not have an indicator for this video. + if (indicatorSpan.length <= 0) { + indicatorSpan = document.createElement('span'); + + indicatorSpan.innerHTML + = ""; + indicatorSpan.className = 'dominantspeakerindicator'; + + $('#' + this.videoSpanId)[0].appendChild(indicatorSpan); + + // adds a tooltip + UIUtil.setTooltip(indicatorSpan, "speaker", "left"); + APP.translation.translateElement($(indicatorSpan)); + } + + $(indicatorSpan).css("visibility", isSpeaker ? "visible" : "hidden"); +}; + export default SmallVideo; diff --git a/modules/UI/videolayout/VideoLayout.js b/modules/UI/videolayout/VideoLayout.js index 59d010696..aab117ac2 100644 --- a/modules/UI/videolayout/VideoLayout.js +++ b/modules/UI/videolayout/VideoLayout.js @@ -538,6 +538,7 @@ var VideoLayout = { if(oldSpeakerRemoteVideo) { oldSpeakerRemoteVideo.updateDominantSpeakerIndicator(false); + localVideoThumbnail.updateDominantSpeakerIndicator(true); currentDominantSpeaker = null; } return; @@ -550,6 +551,7 @@ var VideoLayout = { // Update the current dominant speaker. remoteVideo.updateDominantSpeakerIndicator(true); + localVideoThumbnail.updateDominantSpeakerIndicator(false); // let's remove the indications from the remote video if any if (oldSpeakerRemoteVideo) {