From bcc1289a23b55adf4e05d8732a929889c5e0b9d9 Mon Sep 17 00:00:00 2001 From: Jaya Allamsetty Date: Wed, 27 Nov 2019 12:36:44 -0500 Subject: [PATCH] feat(presenter): Modify the default behavior for presenter mode, it set to off when screensharing is turned on. Also, revert video to the original state when screensharing is turned off. --- conference.js | 36 +++--------------------------------- 1 file changed, 3 insertions(+), 33 deletions(-) diff --git a/conference.js b/conference.js index 09d11657b..7fc2135fe 100644 --- a/conference.js +++ b/conference.js @@ -825,8 +825,6 @@ export default { await this.localVideo.setEffect(undefined); APP.store.dispatch( setVideoMuted(mute, MEDIA_TYPE.PRESENTER)); - this._untoggleScreenSharing - = this._turnScreenSharingOff.bind(this, false); } catch (err) { logger.error('Failed to mute the Presenter video'); } @@ -850,8 +848,6 @@ export default { try { await this.localVideo.setEffect(effect); APP.store.dispatch(setVideoMuted(mute, MEDIA_TYPE.PRESENTER)); - this._untoggleScreenSharing - = this._turnScreenSharingOff.bind(this, true); } catch (err) { logger.error('Failed to apply the Presenter effect', err); } @@ -1496,39 +1492,13 @@ export default { } if (toggle) { - const wasVideoMuted = this.isLocalVideoMuted(); - try { await this._switchToScreenSharing(options); + + return; } catch (err) { logger.error('Failed to switch to screensharing', err); - return; - } - if (wasVideoMuted) { - return; - } - const { height } = this.localVideo.track.getSettings(); - const defaultCamera - = getUserSelectedCameraDeviceId(APP.store.getState()); - let effect; - - try { - effect = await this._createPresenterStreamEffect( - height, defaultCamera); - } catch (err) { - logger.error('Failed to create the presenter effect'); - - return; - } - try { - await this.localVideo.setEffect(effect); - muteLocalVideo(false); - - return; - } catch (err) { - logger.error('Failed to create the presenter effect', err); - return; } } @@ -1555,7 +1525,7 @@ export default { _createDesktopTrack(options = {}) { let externalInstallation = false; let DSExternalInstallationInProgress = false; - const didHaveVideo = Boolean(this.localVideo); + const didHaveVideo = !this.isLocalVideoMuted(); const getDesktopStreamPromise = options.desktopStream ? Promise.resolve([ options.desktopStream ])