Skip to content

Commit

Permalink
fix(config,notifications) fix rendering moderator notifications (jits…
Browse files Browse the repository at this point in the history
…i#9986)

Move DISABLE_FOCUS_INDICATOR from interface_config.js to config.js (disableModeratorIndicator).
  • Loading branch information
robertpin authored and carotkut94 committed Jan 6, 2022
1 parent beffbcd commit 07a13ce
Show file tree
Hide file tree
Showing 7 changed files with 20 additions and 6 deletions.
3 changes: 3 additions & 0 deletions config.js
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,9 @@ var config = {
// callStatsThreshold: 5 // enable callstats for 5% of the users.
},

// Disables moderator indicators.
// disableModeratorIndicator: false,

// Enables reactions feature.
// enableReactions: false,

Expand Down
3 changes: 2 additions & 1 deletion interface_config.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ var interfaceConfig = {

DISABLE_DOMINANT_SPEAKER_INDICATOR: false,

DISABLE_FOCUS_INDICATOR: false,
// Deprecated. Please use disableModeratorIndicator from config.js
// DISABLE_FOCUS_INDICATOR: false,

/**
* If true, notifications regarding joining/leaving are no longer displayed.
Expand Down
2 changes: 1 addition & 1 deletion lang/main.json
Original file line number Diff line number Diff line change
Expand Up @@ -570,7 +570,7 @@
"mutedTitle": "You're muted!",
"mutedRemotelyTitle": "You've been muted by {{moderator}}",
"mutedRemotelyDescription": "You can always unmute when you're ready to speak. Mute back when you're done to keep noise away from the meeting.",
"videoMutedRemotelyTitle": "Your camera has been turned off by {{moderator}}",
"videoMutedRemotelyTitle": "Your video has been turned off by {{moderator}}",
"videoMutedRemotelyDescription": "You can always turn it on again.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) removed by another participant",
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) set by another participant",
Expand Down
1 change: 1 addition & 0 deletions react/features/base/config/configWhitelist.js
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ export default [
'disableIncomingMessageSound',
'disableJoinLeaveSounds',
'disableLocalVideoFlip',
'disableModeratorIndicator',
'disableNS',
'disablePolls',
'disableProfile',
Expand Down
6 changes: 6 additions & 0 deletions react/features/base/config/reducer.js
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,12 @@ function _translateLegacyConfig(oldValue: Object) {
};
}

if (oldValue.disableModeratorIndicator === undefined
&& typeof interfaceConfig === 'object'
&& interfaceConfig.hasOwnProperty('DISABLE_FOCUS_INDICATOR')) {
newValue.disableModeratorIndicator = interfaceConfig.DISABLE_FOCUS_INDICATOR;
}

return newValue;
}

Expand Down
4 changes: 3 additions & 1 deletion react/features/filmstrip/components/web/StatusIndicators.js
Original file line number Diff line number Diff line change
Expand Up @@ -129,11 +129,13 @@ function _mapStateToProps(state, ownProps) {
isAudioMuted = isRemoteTrackMuted(tracks, MEDIA_TYPE.AUDIO, participantID);
}

const { disableModeratorIndicator } = state['features/base/config'];

return {
_currentLayout: getCurrentLayout(state),
_showAudioMutedIndicator: isAudioMuted,
_showModeratorIndicator:
!interfaceConfig.DISABLE_FOCUS_INDICATOR && participant && participant.role === PARTICIPANT_ROLE.MODERATOR,
!disableModeratorIndicator && participant && participant.role === PARTICIPANT_ROLE.MODERATOR,
_showScreenShareIndicator: isScreenSharing,
_showVideoMutedIndicator: isVideoMuted
};
Expand Down
7 changes: 4 additions & 3 deletions react/features/notifications/middleware.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,13 +69,14 @@ MiddlewareRegistry.register(store => next => action => {
return next(action);
}
case PARTICIPANT_UPDATED: {
if (typeof interfaceConfig === 'undefined') {
// Do not show the notification for mobile and also when the focus indicator is disabled.
const state = store.getState();
const { disableModeratorIndicator } = state['features/base/config'];

if (disableModeratorIndicator) {
return next(action);
}

const { id, role } = action.participant;
const state = store.getState();
const localParticipant = getLocalParticipant(state);

if (localParticipant.id !== id) {
Expand Down

0 comments on commit 07a13ce

Please sign in to comment.