From 594f9dfcdd853dba3ba05cddc866576058bc50cc Mon Sep 17 00:00:00 2001 From: Hristo Terezov Date: Wed, 24 Aug 2022 16:17:17 -0500 Subject: [PATCH] fix(follow-me): SS not visible The remote screen shares stored in redux were not updated when follow me is active. Therefore the receiver constraints were not correct. --- react/features/video-layout/subscriber.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/react/features/video-layout/subscriber.js b/react/features/video-layout/subscriber.js index b68e852f8..063824ab5 100644 --- a/react/features/video-layout/subscriber.js +++ b/react/features/video-layout/subscriber.js @@ -12,7 +12,7 @@ import { getAutoPinSetting, updateAutoPinnedParticipant } from './functions'; StateListenerRegistry.register( /* selector */ state => state['features/base/participants'].sortedRemoteVirtualScreenshareParticipants, /* listener */ (sortedRemoteVirtualScreenshareParticipants, store) => { - if (!getAutoPinSetting() || isFollowMeActive(store) || !getMultipleVideoSupportFeatureFlag(store.getState())) { + if (!getMultipleVideoSupportFeatureFlag(store.getState())) { return; } @@ -36,7 +36,9 @@ StateListenerRegistry.register( if (!equals(oldScreenSharesOrder, newScreenSharesOrder)) { store.dispatch(virtualScreenshareParticipantsUpdated(newScreenSharesOrder)); - updateAutoPinnedParticipant(oldScreenSharesOrder, store); + if (getAutoPinSetting() && !isFollowMeActive(store)) { + updateAutoPinnedParticipant(oldScreenSharesOrder, store); + } } }); @@ -53,7 +55,7 @@ StateListenerRegistry.register( // possible to have screen sharing participant that has already left in the remoteScreenShares array. // This can lead to rendering a thumbnails for already left participants since the remoteScreenShares // array is used for building the ordered list of remote participants. - if (!getAutoPinSetting() || isFollowMeActive(store) || getMultipleVideoSupportFeatureFlag(store.getState())) { + if (getMultipleVideoSupportFeatureFlag(store.getState())) { return; } @@ -88,6 +90,8 @@ StateListenerRegistry.register( store.dispatch( setRemoteParticipantsWithScreenShare(newScreenSharesOrder)); - updateAutoPinnedParticipant(oldScreenSharesOrder, store); + if (getAutoPinSetting() && !isFollowMeActive(store)) { + updateAutoPinnedParticipant(oldScreenSharesOrder, store); + } } }, 100));