Remove tint from owner screenshare participants
This commit is contained in:
parent
b4bf363237
commit
bbbe5587f6
|
@ -267,6 +267,22 @@ export function getVirtualScreenshareParticipantOwnerId(id: string) {
|
|||
return id.split('-')[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns owner participant IDs of the virtual screenshares participant.
|
||||
*
|
||||
* @param {(Function|Object)} stateful - The (whole) redux state, or redux's.
|
||||
* @returns {(string[])}
|
||||
*/
|
||||
export function getVirtualScreenshareParticipantOwnerIds(stateful: IStateful) {
|
||||
const virtualScreenshareParticipants = toState(stateful)['features/base/participants']
|
||||
.sortedRemoteVirtualScreenshareParticipants;
|
||||
|
||||
const virtualScreenshareParticipantIds = Array.from(virtualScreenshareParticipants.keys())
|
||||
.map(id => getVirtualScreenshareParticipantOwnerId(id));
|
||||
|
||||
return virtualScreenshareParticipantIds;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the Map with fake participants.
|
||||
*
|
||||
|
|
|
@ -20,6 +20,7 @@ import { pinParticipant } from '../../../base/participants/actions';
|
|||
import {
|
||||
getLocalParticipant,
|
||||
getParticipantByIdOrUndefined,
|
||||
getVirtualScreenshareParticipantOwnerIds,
|
||||
hasRaisedHand,
|
||||
isLocalScreenshareParticipant,
|
||||
isScreenShareParticipant,
|
||||
|
@ -1287,9 +1288,13 @@ function _mapStateToProps(state: IReduxState, ownProps: any): Object {
|
|||
const participantId = isLocal ? getLocalParticipant(state)?.id : participantID;
|
||||
const isActiveParticipant = activeParticipants.find((pId: string) => pId === participantId);
|
||||
const participantCurrentlyOnLargeVideo = state['features/large-video']?.participantId === id;
|
||||
const virtualScreenshareParticipantOwnerIds = getVirtualScreenshareParticipantOwnerIds(state);
|
||||
const shouldDisplayTintBackground
|
||||
= _currentLayout !== LAYOUTS.TILE_VIEW && filmstripType === FILMSTRIP_TYPE.MAIN
|
||||
&& (isActiveParticipant || participantCurrentlyOnLargeVideo);
|
||||
&& (isActiveParticipant || participantCurrentlyOnLargeVideo)
|
||||
|
||||
// skip showing tint for owner participants that are screensharing.
|
||||
&& !virtualScreenshareParticipantOwnerIds.includes(id);
|
||||
|
||||
return {
|
||||
_audioTrack,
|
||||
|
|
Loading…
Reference in New Issue