diff --git a/config.js b/config.js index ef5734d3e2..275ad6bdb3 100644 --- a/config.js +++ b/config.js @@ -851,7 +851,10 @@ var config = { // 'toolbar.noisyAudioInputTitle', // shown when noise is detected for the current microphone // 'toolbar.talkWhileMutedPopup', // shown when user tries to speak while muted // 'transcribing.failedToStart' // shown when transcribing fails to start - // ] + // ], + + // Automatically hides the filmstrip when screen width is under a certain threshold + autohideFilmstrip: true, // Allow all above example options to include a trailing comma and // prevent fear when commenting out the last value. diff --git a/react/features/base/config/configWhitelist.js b/react/features/base/config/configWhitelist.js index 6536b2a5d8..40ef0edf15 100644 --- a/react/features/base/config/configWhitelist.js +++ b/react/features/base/config/configWhitelist.js @@ -16,6 +16,7 @@ export default [ 'analytics.disabled', 'audioLevelsInterval', 'audioQuality', + 'autohideFilmstrip', 'apiLogLevels', 'avgRtpStatsN', 'backgroundAlpha', diff --git a/react/features/filmstrip/subscriber.web.js b/react/features/filmstrip/subscriber.web.js index 5a81422cc4..8ad1e2dea4 100644 --- a/react/features/filmstrip/subscriber.web.js +++ b/react/features/filmstrip/subscriber.web.js @@ -121,7 +121,12 @@ StateListenerRegistry.register( StateListenerRegistry.register( /* selector */ state => state['features/base/responsive-ui'].clientWidth < ASPECT_RATIO_BREAKPOINT, /* listener */ (widthBelowThreshold, store) => { - store.dispatch(setFilmstripVisible(!widthBelowThreshold)); + const state = store.getState(); + const { autohideFilmstrip } = state['features/base/config']; + + if (autohideFilmstrip) { + store.dispatch(setFilmstripVisible(!widthBelowThreshold)); + } }); /**