33 lines
1.4 KiB
TypeScript
33 lines
1.4 KiB
TypeScript
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.
|
|
*/
|
|
StateListenerRegistry.register(
|
|
/* selector */ state => state['features/base/participants'].sortedRemoteVirtualScreenshareParticipants,
|
|
/* listener */ (sortedRemoteVirtualScreenshareParticipants, store) => updateRemoteParticipants(store));
|
|
|
|
/**
|
|
* 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));
|