Merge branch 'feature-lastn' of https://github.com/havfo/multiparty-meeting into feature-lastn

This commit is contained in:
Stefan Otto
2018-10-29 16:07:43 +01:00
6 changed files with 183 additions and 47 deletions
+9 -9
View File
@@ -114,7 +114,7 @@ class Filmstrip extends Component
render()
{
const { peers, advancedMode, lastN, lastNLength } = this.props;
const { peers, advancedMode, spotlights, spotlightsLength } = this.props;
const activePeerName = this.getActivePeerName();
@@ -143,7 +143,7 @@ class Filmstrip extends Component
Object.keys(peers).map((peerName) =>
{
return (
lastN.find((lastNElement) => lastNElement === peerName)?
spotlights.find((spotlightsElement) => spotlightsElement === peerName)?
<div
key={peerName}
onClick={() => this.props.setSelectedPeer(peerName)}
@@ -166,9 +166,9 @@ class Filmstrip extends Component
</div>
</div>
<div className='hidden-peer-container'>
{ (lastNLength<Object.keys(peers).length)?
{ (spotlightsLength<Object.keys(peers).length)?
<HiddenPeers
lastNLength={Object.keys(peers).length-lastNLength}
spotlightsLength={Object.keys(peers).length-spotlightsLength}
/>:null
}
</div>
@@ -186,13 +186,13 @@ Filmstrip.propTypes = {
myName : PropTypes.string.isRequired,
selectedPeerName : PropTypes.string,
setSelectedPeer : PropTypes.func.isRequired,
lastNLength : PropTypes.number,
lastN : PropTypes.array.isRequired
spotlightsLength : PropTypes.number,
spotlights : PropTypes.array.isRequired
};
const mapStateToProps = (state) =>
{
const lastNLength = state.room.lastN ? state.room.lastN.length : 0;
const spotlightsLength = state.room.spotlights ? state.room.spotlights.length : 0;
return {
activeSpeakerName : state.room.activeSpeakerName,
@@ -200,8 +200,8 @@ const mapStateToProps = (state) =>
peers : state.peers,
consumers : state.consumers,
myName : state.me.name,
lastN : state.room.lastN,
lastNLength
spotlights : state.room.spotlights,
spotlightsLength
};
};
+13 -13
View File
@@ -93,8 +93,8 @@ class Peers extends React.Component
advancedMode,
activeSpeakerName,
peers,
lastN,
lastNLength
spotlights,
spotlightsLength
} = this.props;
const style =
@@ -109,8 +109,8 @@ class Peers extends React.Component
peers.map((peer) =>
{
return (
(lastN.find(function(lastNElement)
{ return lastNElement == peer.name; }))?
(spotlights.find(function(spotlightsElement)
{ return spotlightsElement == peer.name; }))?
<Appear key={peer.name} duration={1000}>
<div
className={classnames('peer-container', {
@@ -129,9 +129,9 @@ class Peers extends React.Component
})
}
<div className='hidden-peer-container'>
{ (lastNLength<peers.length)?
{ (spotlightsLength<peers.length)?
<HiddenPeers
lastNLength={peers.length-lastNLength}
spotlightsLength={peers.length-spotlightsLength}
/>:null
}
</div>
@@ -146,24 +146,24 @@ Peers.propTypes =
peers : PropTypes.arrayOf(appPropTypes.Peer).isRequired,
boxes : PropTypes.number,
activeSpeakerName : PropTypes.string,
lastNLength : PropTypes.number,
lastN : PropTypes.array.isRequired
spotlightsLength : PropTypes.number,
spotlights : PropTypes.array.isRequired
};
const mapStateToProps = (state) =>
{
const peers = Object.values(state.peers);
const lastN = state.room.lastN;
const lastNLength = lastN ? state.room.lastN.length : 0;
const boxes = lastNLength + Object.values(state.consumers)
const spotlights = state.room.spotlights;
const spotlightsLength = spotlights ? state.room.spotlights.length : 0;
const boxes = spotlightsLength + Object.values(state.consumers)
.filter((consumer) => consumer.source === 'screen').length;
return {
peers,
boxes,
activeSpeakerName : state.room.activeSpeakerName,
lastN,
lastNLength
spotlights,
spotlightsLength
};
};