snapshot of https://github.com/jitsi/jitsi-meet.git @ fd1749dd28f4138aa80234fc7f311b19aaffa0e7 (2026-09-15)
This commit is contained in:
35
react/features/filmstrip/subscriber.any.ts
Normal file
35
react/features/filmstrip/subscriber.any.ts
Normal file
@@ -0,0 +1,35 @@
|
||||
import StateListenerRegistry from '../base/redux/StateListenerRegistry';
|
||||
|
||||
import { isFilmstripScrollVisible, updateRemoteParticipants } from './functions';
|
||||
|
||||
/**
|
||||
* Listens for changes to the screensharing status of the remote participants to recompute the reordered list of the
|
||||
* remote endpoints.
|
||||
*/
|
||||
StateListenerRegistry.register(
|
||||
/* selector */ state => state['features/video-layout'].remoteScreenShares,
|
||||
/* listener */ (remoteScreenShares, store) => updateRemoteParticipants(store));
|
||||
|
||||
/**
|
||||
* Listens for changes to the remote screenshare participants to recompute the reordered list of the remote endpoints.
|
||||
* We force updateRemoteParticipants to make sure it executes and for the case where
|
||||
* sortedRemoteVirtualScreenshareParticipants becomes 0. We do not want to short circuit it in case of no screen-sharers
|
||||
* and no scroll and triggered for dominant speaker changed.
|
||||
*/
|
||||
StateListenerRegistry.register(
|
||||
/* selector */ state => state['features/base/participants'].sortedRemoteVirtualScreenshareParticipants,
|
||||
/* listener */ (sortedRemoteVirtualScreenshareParticipants, store) => updateRemoteParticipants(store, true));
|
||||
|
||||
/**
|
||||
* Listens for changes to the dominant speaker to recompute the reordered list of the remote endpoints.
|
||||
*/
|
||||
StateListenerRegistry.register(
|
||||
/* selector */ state => state['features/base/participants'].dominantSpeaker,
|
||||
/* listener */ (dominantSpeaker, store) => updateRemoteParticipants(store));
|
||||
|
||||
/**
|
||||
* Listens for changes in the filmstrip scroll visibility.
|
||||
*/
|
||||
StateListenerRegistry.register(
|
||||
/* selector */ state => isFilmstripScrollVisible(state),
|
||||
/* listener */ (_, store) => updateRemoteParticipants(store));
|
||||
Reference in New Issue
Block a user