rn,participants: don't render thumbnnail for screen-shares

This commit is contained in:
Saúl Ibarra Corretgé 2019-08-07 14:17:33 +02:00 committed by Saúl Ibarra Corretgé
parent fd0ca76255
commit 67dca97d1d
2 changed files with 10 additions and 3 deletions

View File

@ -55,6 +55,11 @@ type Props = {
*/ */
avatarSize: number, avatarSize: number,
/**
* Whether video should be disabled for his view.
*/
disableVideo: ?boolean,
/** /**
* Callback to invoke when the {@code ParticipantView} is clicked/pressed. * Callback to invoke when the {@code ParticipantView} is clicked/pressed.
*/ */
@ -250,7 +255,7 @@ class ParticipantView extends Component<Props> {
* @returns {Props} * @returns {Props}
*/ */
function _mapStateToProps(state, ownProps) { function _mapStateToProps(state, ownProps) {
const { participantId } = ownProps; const { disableVideo, participantId } = ownProps;
let connectionStatus; let connectionStatus;
let participantName; let participantName;
@ -259,7 +264,7 @@ function _mapStateToProps(state, ownProps) {
connectionStatus connectionStatus
|| JitsiParticipantConnectionStatus.ACTIVE, || JitsiParticipantConnectionStatus.ACTIVE,
_participantName: participantName, _participantName: participantName,
_renderVideo: shouldRenderParticipantVideo(state, participantId), _renderVideo: shouldRenderParticipantVideo(state, participantId) && !disableVideo,
_videoTrack: _videoTrack:
getTrackByMediaTypeAndParticipant( getTrackByMediaTypeAndParticipant(
state['features/base/tracks'], state['features/base/tracks'],

View File

@ -6,7 +6,7 @@ import type { Dispatch } from 'redux';
import { ColorSchemeRegistry } from '../../../base/color-scheme'; import { ColorSchemeRegistry } from '../../../base/color-scheme';
import { openDialog } from '../../../base/dialog'; import { openDialog } from '../../../base/dialog';
import { Audio, MEDIA_TYPE } from '../../../base/media'; import { MEDIA_TYPE, VIDEO_TYPE, Audio } from '../../../base/media';
import { import {
PARTICIPANT_ROLE, PARTICIPANT_ROLE,
ParticipantView, ParticipantView,
@ -141,6 +141,7 @@ class Thumbnail extends Component<Props> {
const participantInLargeVideo const participantInLargeVideo
= participantId === largeVideo.participantId; = participantId === largeVideo.participantId;
const videoMuted = !videoTrack || videoTrack.muted; const videoMuted = !videoTrack || videoTrack.muted;
const isScreenShare = videoTrack && videoTrack.videoType === VIDEO_TYPE.DESKTOP;
return ( return (
<Container <Container
@ -161,6 +162,7 @@ class Thumbnail extends Component<Props> {
<ParticipantView <ParticipantView
avatarSize = { AVATAR_SIZE } avatarSize = { AVATAR_SIZE }
disableVideo = { isScreenShare }
participantId = { participantId } participantId = { participantId }
style = { _styles.participantViewStyle } style = { _styles.participantViewStyle }
tintEnabled = { participantInLargeVideo && !disableTint } tintEnabled = { participantInLargeVideo && !disableTint }