Added some tooltips
parent
49ebf5330b
commit
a33e3df783
|
|
@ -7,6 +7,7 @@ import classnames from 'classnames';
|
||||||
import * as appPropTypes from '../appPropTypes';
|
import * as appPropTypes from '../appPropTypes';
|
||||||
import { withRoomContext } from '../../RoomContext';
|
import { withRoomContext } from '../../RoomContext';
|
||||||
import Fab from '@material-ui/core/Fab';
|
import Fab from '@material-ui/core/Fab';
|
||||||
|
import Tooltip from '@material-ui/core/Tooltip';
|
||||||
// import Avatar from '@material-ui/core/Avatar';
|
// import Avatar from '@material-ui/core/Avatar';
|
||||||
import MicIcon from '@material-ui/icons/Mic';
|
import MicIcon from '@material-ui/icons/Mic';
|
||||||
import MicOffIcon from '@material-ui/icons/MicOff';
|
import MicOffIcon from '@material-ui/icons/MicOff';
|
||||||
|
|
@ -78,41 +79,67 @@ const Sidebar = (props) =>
|
||||||
|
|
||||||
let micState;
|
let micState;
|
||||||
|
|
||||||
if (!me.canSendMic)
|
let micTip;
|
||||||
micState = 'unsupported';
|
|
||||||
else if (!micProducer)
|
if (!me.canSendMic || !micProducer)
|
||||||
|
{
|
||||||
micState = 'unsupported';
|
micState = 'unsupported';
|
||||||
|
micTip = 'Audio unsupported';
|
||||||
|
}
|
||||||
else if (!micProducer.locallyPaused && !micProducer.remotelyPaused)
|
else if (!micProducer.locallyPaused && !micProducer.remotelyPaused)
|
||||||
|
{
|
||||||
micState = 'on';
|
micState = 'on';
|
||||||
|
micTip = 'Mute audio';
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
micState = 'off';
|
micState = 'off';
|
||||||
|
micTip = 'Unmute audio';
|
||||||
|
}
|
||||||
|
|
||||||
let webcamState;
|
let webcamState;
|
||||||
|
|
||||||
|
let webcamTip;
|
||||||
|
|
||||||
if (!me.canSendWebcam)
|
if (!me.canSendWebcam)
|
||||||
|
{
|
||||||
webcamState = 'unsupported';
|
webcamState = 'unsupported';
|
||||||
|
webcamTip = 'Video unsupported';
|
||||||
|
}
|
||||||
else if (webcamProducer)
|
else if (webcamProducer)
|
||||||
|
{
|
||||||
webcamState = 'on';
|
webcamState = 'on';
|
||||||
|
webcamTip = 'Stop video';
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
webcamState = 'off';
|
webcamState = 'off';
|
||||||
|
webcamTip = 'Start video';
|
||||||
|
}
|
||||||
|
|
||||||
let screenState;
|
let screenState;
|
||||||
|
|
||||||
|
let screenTip;
|
||||||
|
|
||||||
if (me.needExtension)
|
if (me.needExtension)
|
||||||
{
|
{
|
||||||
screenState = 'need-extension';
|
screenState = 'need-extension';
|
||||||
|
screenTip = 'Install screen sharing extension';
|
||||||
}
|
}
|
||||||
else if (!me.canShareScreen)
|
else if (!me.canShareScreen)
|
||||||
{
|
{
|
||||||
screenState = 'unsupported';
|
screenState = 'unsupported';
|
||||||
|
screenTip = 'Screen sharing not supported';
|
||||||
}
|
}
|
||||||
else if (screenProducer)
|
else if (screenProducer)
|
||||||
{
|
{
|
||||||
screenState = 'on';
|
screenState = 'on';
|
||||||
|
screenTip = 'Stop screen sharing';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
screenState = 'off';
|
screenState = 'off';
|
||||||
|
screenTip = 'Start screen sharing';
|
||||||
}
|
}
|
||||||
|
|
||||||
const smallScreen = useMediaQuery(theme.breakpoints.down('sm'));
|
const smallScreen = useMediaQuery(theme.breakpoints.down('sm'));
|
||||||
|
|
@ -123,6 +150,7 @@ const Sidebar = (props) =>
|
||||||
classnames(classes.root, toolbarsVisible ? classes.show : classes.hide)
|
classnames(classes.root, toolbarsVisible ? classes.show : classes.hide)
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
|
<Tooltip title={micTip} placement={smallScreen ? 'top' : 'right'}>
|
||||||
<Fab
|
<Fab
|
||||||
aria-label='Mute mic'
|
aria-label='Mute mic'
|
||||||
className={classes.fab}
|
className={classes.fab}
|
||||||
|
|
@ -141,6 +169,8 @@ const Sidebar = (props) =>
|
||||||
<MicOffIcon />
|
<MicOffIcon />
|
||||||
}
|
}
|
||||||
</Fab>
|
</Fab>
|
||||||
|
</Tooltip>
|
||||||
|
<Tooltip title={webcamTip} placement={smallScreen ? 'top' : 'right'}>
|
||||||
<Fab
|
<Fab
|
||||||
aria-label='Mute video'
|
aria-label='Mute video'
|
||||||
className={classes.fab}
|
className={classes.fab}
|
||||||
|
|
@ -159,6 +189,8 @@ const Sidebar = (props) =>
|
||||||
<VideoOffIcon />
|
<VideoOffIcon />
|
||||||
}
|
}
|
||||||
</Fab>
|
</Fab>
|
||||||
|
</Tooltip>
|
||||||
|
<Tooltip title={screenTip} placement={smallScreen ? 'top' : 'right'}>
|
||||||
<Fab
|
<Fab
|
||||||
aria-label='Share screen'
|
aria-label='Share screen'
|
||||||
className={classes.fab}
|
className={classes.fab}
|
||||||
|
|
@ -204,7 +236,12 @@ const Sidebar = (props) =>
|
||||||
:null
|
:null
|
||||||
}
|
}
|
||||||
</Fab>
|
</Fab>
|
||||||
|
</Tooltip>
|
||||||
|
|
||||||
|
<Tooltip
|
||||||
|
title={locked ? 'Unlock room' : 'Lock room'}
|
||||||
|
placement={smallScreen ? 'top' : 'right'}
|
||||||
|
>
|
||||||
<Fab
|
<Fab
|
||||||
aria-label='Room lock'
|
aria-label='Room lock'
|
||||||
className={classes.fab}
|
className={classes.fab}
|
||||||
|
|
@ -228,6 +265,7 @@ const Sidebar = (props) =>
|
||||||
<LockOpenIcon />
|
<LockOpenIcon />
|
||||||
}
|
}
|
||||||
</Fab>
|
</Fab>
|
||||||
|
</Tooltip>
|
||||||
|
|
||||||
{ /* <Fab
|
{ /* <Fab
|
||||||
aria-label='Raise hand'
|
aria-label='Raise hand'
|
||||||
|
|
@ -240,6 +278,7 @@ const Sidebar = (props) =>
|
||||||
<Avatar alt='Hand' src={me.raiseHand ? HandOn : HandOff} />
|
<Avatar alt='Hand' src={me.raiseHand ? HandOn : HandOff} />
|
||||||
</Fab> */ }
|
</Fab> */ }
|
||||||
|
|
||||||
|
<Tooltip title='Leave meeting' placement={smallScreen ? 'top' : 'right'}>
|
||||||
<Fab
|
<Fab
|
||||||
aria-label='Leave meeting'
|
aria-label='Leave meeting'
|
||||||
className={classes.fab}
|
className={classes.fab}
|
||||||
|
|
@ -249,6 +288,7 @@ const Sidebar = (props) =>
|
||||||
>
|
>
|
||||||
<LeaveIcon />
|
<LeaveIcon />
|
||||||
</Fab>
|
</Fab>
|
||||||
|
</Tooltip>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue