Clean up raised hand naming. Only needs UI now. Ref #40

auto_join_3.3
Håvar Aambø Fosstveit 2020-05-02 10:47:57 +02:00
parent e061cce53f
commit e33c1f7c03
9 changed files with 44 additions and 35 deletions

View File

@ -1505,30 +1505,30 @@ export default class RoomClient
} }
} }
async sendRaiseHandState(state) async setRaisedHand(raisedHand)
{ {
logger.debug('sendRaiseHandState: ', state); logger.debug('setRaisedHand: ', raisedHand);
store.dispatch( store.dispatch(
meActions.setMyRaiseHandStateInProgress(true)); meActions.setRaisedHandInProgress(true));
try try
{ {
await this.sendRequest('raiseHand', { raiseHandState: state }); await this.sendRequest('raisedHand', { raisedHand });
store.dispatch( store.dispatch(
meActions.setMyRaiseHandState(state)); meActions.setRaisedHand(raisedHand));
} }
catch (error) catch (error)
{ {
logger.error('sendRaiseHandState() | failed: %o', error); logger.error('setRaisedHand() | [error:"%o"]', error);
// We need to refresh the component for it to render changed state // We need to refresh the component for it to render changed state
store.dispatch(meActions.setMyRaiseHandState(!state)); store.dispatch(meActions.setRaisedHand(!raisedHand));
} }
store.dispatch( store.dispatch(
meActions.setMyRaiseHandStateInProgress(false)); meActions.setRaisedHandInProgress(false));
} }
async setMaxSendingSpatialLayer(spatialLayer) async setMaxSendingSpatialLayer(spatialLayer)
@ -2205,6 +2205,15 @@ export default class RoomClient
break; break;
} }
case 'raisedHand':
{
const { peerId, raisedHand } = notification.data;
store.dispatch(peerActions.setPeerRaisedHand(peerId, raisedHand));
break;
}
case 'chatMessage': case 'chatMessage':
{ {
const { peerId, chatMessage } = notification.data; const { peerId, chatMessage } = notification.data;

View File

@ -42,8 +42,8 @@ beforeEach(() =>
loggedIn : false, loggedIn : false,
loginEnabled : true, loginEnabled : true,
picture : null, picture : null,
raiseHand : false, raisedHand : false,
raiseHandInProgress : false, raisedHandInProgress : false,
screenShareInProgress : false, screenShareInProgress : false,
webcamDevices : null, webcamDevices : null,
webcamInProgress : false webcamInProgress : false

View File

@ -63,9 +63,9 @@ export const setWebcamDevices = (devices) =>
payload : { devices } payload : { devices }
}); });
export const setMyRaiseHandState = (flag) => export const setRaisedHand = (flag) =>
({ ({
type : 'SET_MY_RAISE_HAND_STATE', type : 'SET_RAISED_HAND',
payload : { flag } payload : { flag }
}); });
@ -93,9 +93,9 @@ export const setScreenShareInProgress = (flag) =>
payload : { flag } payload : { flag }
}); });
export const setMyRaiseHandStateInProgress = (flag) => export const setRaisedHandInProgress = (flag) =>
({ ({
type : 'SET_MY_RAISE_HAND_STATE_IN_PROGRESS', type : 'SET_RAISED_HAND_IN_PROGRESS',
payload : { flag } payload : { flag }
}); });

View File

@ -34,10 +34,10 @@ export const setPeerScreenInProgress = (peerId, flag) =>
payload : { peerId, flag } payload : { peerId, flag }
}); });
export const setPeerRaiseHandState = (peerId, raiseHandState) => export const setPeerRaisedHand = (peerId, raisedHand) =>
({ ({
type : 'SET_PEER_RAISE_HAND_STATE', type : 'SET_PEER_RAISED_HAND',
payload : { peerId, raiseHandState } payload : { peerId, raisedHand }
}); });
export const setPeerPicture = (peerId, picture) => export const setPeerPicture = (peerId, picture) =>

View File

@ -63,7 +63,7 @@ const styles = (theme) =>
{ {
opacity : 1 opacity : 1
}, },
'&.raise-hand' : '&.raisedHand' :
{ {
backgroundImage : `url(${HandIcon})`, backgroundImage : `url(${HandIcon})`,
opacity : 1 opacity : 1
@ -92,7 +92,7 @@ const ListMe = (props) =>
<div className={classes.indicators}> <div className={classes.indicators}>
{ me.raisedHand && { me.raisedHand &&
<div className={classnames(classes.icon, 'raise-hand')} /> <div className={classnames(classes.icon, 'raisedHand')} />
} }
</div> </div>
</div> </div>

View File

@ -82,7 +82,7 @@ const styles = (theme) =>
{ {
opacity : 0.2 opacity : 0.2
}, },
'&.raise-hand' : '&.raisedHand' :
{ {
backgroundImage : `url(${HandIcon})` backgroundImage : `url(${HandIcon})`
} }
@ -140,12 +140,12 @@ const ListPeer = (props) =>
{peer.displayName} {peer.displayName}
</div> </div>
<div className={classes.indicators}> <div className={classes.indicators}>
{ peer.raiseHandState && { peer.raisedHand &&
<div className={ <div className={
classnames( classnames(
classes.icon, 'raise-hand', { classes.icon, 'raisedHand', {
on : peer.raiseHandState, on : peer.raisedHand,
off : !peer.raiseHandState off : !peer.raisedHand
} }
) )
} }

View File

@ -15,8 +15,8 @@ const initialState =
screenShareInProgress : false, screenShareInProgress : false,
displayNameInProgress : false, displayNameInProgress : false,
loginEnabled : false, loginEnabled : false,
raiseHand : false, raisedHand : false,
raiseHandInProgress : false, raisedHandInProgress : false,
loggedIn : false, loggedIn : false,
isSpeaking : false isSpeaking : false
}; };
@ -134,18 +134,18 @@ const me = (state = initialState, action) =>
return { ...state, screenShareInProgress: flag }; return { ...state, screenShareInProgress: flag };
} }
case 'SET_MY_RAISE_HAND_STATE': case 'SET_RAISED_HAND':
{ {
const { flag } = action.payload; const { flag } = action.payload;
return { ...state, raiseHand: flag }; return { ...state, raisedHand: flag };
} }
case 'SET_MY_RAISE_HAND_STATE_IN_PROGRESS': case 'SET_RAISED_HAND_IN_PROGRESS':
{ {
const { flag } = action.payload; const { flag } = action.payload;
return { ...state, raiseHandInProgress: flag }; return { ...state, raisedHandInProgress: flag };
} }
case 'SET_DISPLAY_NAME_IN_PROGRESS': case 'SET_DISPLAY_NAME_IN_PROGRESS':

View File

@ -20,8 +20,8 @@ const peer = (state = {}, action) =>
case 'SET_PEER_KICK_IN_PROGRESS': case 'SET_PEER_KICK_IN_PROGRESS':
return { ...state, peerKickInProgress: action.payload.flag }; return { ...state, peerKickInProgress: action.payload.flag };
case 'SET_PEER_RAISE_HAND_STATE': case 'SET_PEER_RAISED_HAND':
return { ...state, raiseHandState: action.payload.raiseHandState }; return { ...state, raisedHand: action.payload.raisedHand };
case 'ADD_CONSUMER': case 'ADD_CONSUMER':
{ {
@ -86,7 +86,7 @@ const peers = (state = {}, action) =>
case 'SET_PEER_VIDEO_IN_PROGRESS': case 'SET_PEER_VIDEO_IN_PROGRESS':
case 'SET_PEER_AUDIO_IN_PROGRESS': case 'SET_PEER_AUDIO_IN_PROGRESS':
case 'SET_PEER_SCREEN_IN_PROGRESS': case 'SET_PEER_SCREEN_IN_PROGRESS':
case 'SET_PEER_RAISE_HAND_STATE': case 'SET_PEER_RAISED_HAND':
case 'SET_PEER_PICTURE': case 'SET_PEER_PICTURE':
case 'ADD_CONSUMER': case 'ADD_CONSUMER':
case 'ADD_PEER_ROLE': case 'ADD_PEER_ROLE':

View File

@ -1251,14 +1251,14 @@ class Room extends EventEmitter
break; break;
} }
case 'raiseHand': case 'raisedHand':
{ {
const { raisedHand } = request.data; const { raisedHand } = request.data;
peer.raisedHand = raisedHand; peer.raisedHand = raisedHand;
// Spread to others // Spread to others
this._notification(peer.socket, 'raiseHand', { this._notification(peer.socket, 'raisedHand', {
peerId : peer.id, peerId : peer.id,
raisedHand : raisedHand raisedHand : raisedHand
}, true); }, true);