mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-05-15 16:22:38 +00:00
Merge pull request #1221 from Stremio/feat/keyboard-media-key-support
Player: Add media key support
This commit is contained in:
commit
c5d7cd53f1
1 changed files with 23 additions and 0 deletions
|
|
@ -609,6 +609,29 @@ const Player = ({ urlParams, queryParams }) => {
|
||||||
|
|
||||||
useMediaSession(video.state, player, onPlayRequested, onPauseRequested, onNextVideoRequested);
|
useMediaSession(video.state, player, onPlayRequested, onPauseRequested, onNextVideoRequested);
|
||||||
|
|
||||||
|
React.useEffect(() => {
|
||||||
|
const onMediaKey = (action) => {
|
||||||
|
switch (action) {
|
||||||
|
case 'play-pause':
|
||||||
|
video.state.paused ? onPlayRequested() : onPauseRequested();
|
||||||
|
break;
|
||||||
|
case 'next-track':
|
||||||
|
if (player.nextVideo !== null) {
|
||||||
|
video.setTime(0);
|
||||||
|
onNextVideoRequested();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'previous-track':
|
||||||
|
if (video.state.time !== null && video.state.time > 5000) {
|
||||||
|
onSeekRequested(0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
shell.on('media-key', onMediaKey);
|
||||||
|
return () => shell.off('media-key', onMediaKey);
|
||||||
|
}, [video.state.paused, video.state.time, player.nextVideo, onPlayRequested, onPauseRequested, onNextVideoRequested, onSeekRequested]);
|
||||||
|
|
||||||
onShortcut('seekForward', (combo) => {
|
onShortcut('seekForward', (combo) => {
|
||||||
if (video.state.time !== null) {
|
if (video.state.time !== null) {
|
||||||
const seekDuration = combo === 1 ? settings.seekShortTimeDuration : settings.seekTimeDuration;
|
const seekDuration = combo === 1 ? settings.seekShortTimeDuration : settings.seekTimeDuration;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue