Merge branch 'fix-updateDimensions' into develop

master
Stefan Otto 2018-07-19 09:08:32 +02:00
commit e4c48f28f4
3 changed files with 28 additions and 22 deletions

View File

@ -52,21 +52,21 @@ export default class FullView extends React.Component
this._setTracks(videoTrack); this._setTracks(videoTrack);
if (fscreen.fullscreenEnabled) if (fscreen.fullscreenEnabled)
{ {
fscreen.addEventListener('fullscreenchange', this.handleExitFullscreen, false); fscreen.addEventListener('fullscreenchange', this.handleExitFullscreen, false);
fscreen.requestFullscreen(this.video.current); fscreen.requestFullscreen(this.video.current);
} }
} }
componentWillUnmount() componentWillUnmount()
{ {
fscreen.removeEventListener('fullscreenchange', this.handleExitFullscreen); fscreen.removeEventListener('fullscreenchange', this.handleExitFullscreen);
} }
handleExitFullscreen = () => handleExitFullscreen = () =>
{ {
if (!fscreen.fullscreenElement) if (!fscreen.fullscreenElement)
{ {
this.props.toggleFullscreen(); this.props.toggleFullscreen();
} }

View File

@ -147,7 +147,11 @@ class Peer extends Component
{screenConsumer ? {screenConsumer ?
<div className={classnames('view-container', 'screen')} style={style}> <div className={classnames('view-container', 'screen')} style={style}>
<div className='controls'> <div
className={classnames('controls', {
visible : this.state.controlsVisible
})}
>
<div <div
className={classnames('button', 'screen', { className={classnames('button', 'screen', {
on : screenVisible, on : screenVisible,

View File

@ -22,7 +22,12 @@ class Peers extends React.Component
updateDimensions = () => updateDimensions = () =>
{ {
const n = this.props.peers.length; const n = this.props.boxes;
if (n === 0)
{
return;
}
const width = this.refs.peers.clientWidth; const width = this.refs.peers.clientWidth;
const height = this.refs.peers.clientHeight; const height = this.refs.peers.clientHeight;
@ -116,27 +121,24 @@ class Peers extends React.Component
} }
Peers.propTypes = Peers.propTypes =
{ {
advancedMode : PropTypes.bool, advancedMode : PropTypes.bool,
peers : PropTypes.arrayOf(appPropTypes.Peer).isRequired, peers : PropTypes.arrayOf(appPropTypes.Peer).isRequired,
videoStreams : PropTypes.any, boxes : PropTypes.number,
activeSpeakerName : PropTypes.string, activeSpeakerName : PropTypes.string,
toolAreaOpen : PropTypes.bool toolAreaOpen : PropTypes.bool
}; };
const mapStateToProps = (state) => const mapStateToProps = (state) =>
{ {
const peersArray = Object.values(state.peers); const peers = Object.values(state.peers);
const videoStreamsArray = Object.values(state.consumers);
const videoStreams = const boxes = peers.length + Object.values(state.consumers)
videoStreamsArray.filter((consumer) => .filter((consumer) => consumer.source === 'screen').length;
{
return (consumer.source === 'webcam' || consumer.source === 'screen');
}).length;
return { return {
peers : peersArray, peers,
videoStreams : videoStreams, boxes,
activeSpeakerName : state.room.activeSpeakerName, activeSpeakerName : state.room.activeSpeakerName,
toolAreaOpen : state.toolarea.toolAreaOpen toolAreaOpen : state.toolarea.toolAreaOpen
}; };