mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
fix: stop videoplayback after exiting fullscreen on television
This commit is contained in:
parent
d06979fbe1
commit
5196b5308a
1 changed files with 11 additions and 3 deletions
|
@ -402,6 +402,14 @@ import { appRouter } from '../../../components/appRouter';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function onFullscreenChange() {
|
||||||
|
if (!layoutManager.tv) {
|
||||||
|
updateFullscreenIcon();
|
||||||
|
} else if (!playbackManager.isFullscreen(currentPlayer)) {
|
||||||
|
appRouter.back();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function updateFullscreenIcon() {
|
function updateFullscreenIcon() {
|
||||||
const button = view.querySelector('.btnFullscreen');
|
const button = view.querySelector('.btnFullscreen');
|
||||||
const icon = button.querySelector('.material-icons');
|
const icon = button.querySelector('.material-icons');
|
||||||
|
@ -505,7 +513,7 @@ import { appRouter } from '../../../components/appRouter';
|
||||||
Events.on(player, 'pause', onPlayPauseStateChanged);
|
Events.on(player, 'pause', onPlayPauseStateChanged);
|
||||||
Events.on(player, 'unpause', onPlayPauseStateChanged);
|
Events.on(player, 'unpause', onPlayPauseStateChanged);
|
||||||
Events.on(player, 'timeupdate', onTimeUpdate);
|
Events.on(player, 'timeupdate', onTimeUpdate);
|
||||||
Events.on(player, 'fullscreenchange', updateFullscreenIcon);
|
Events.on(player, 'fullscreenchange', onFullscreenChange);
|
||||||
Events.on(player, 'mediastreamschange', onMediaStreamsChanged);
|
Events.on(player, 'mediastreamschange', onMediaStreamsChanged);
|
||||||
Events.on(player, 'beginFetch', onBeginFetch);
|
Events.on(player, 'beginFetch', onBeginFetch);
|
||||||
Events.on(player, 'endFetch', onEndFetch);
|
Events.on(player, 'endFetch', onEndFetch);
|
||||||
|
@ -529,7 +537,7 @@ import { appRouter } from '../../../components/appRouter';
|
||||||
Events.off(player, 'pause', onPlayPauseStateChanged);
|
Events.off(player, 'pause', onPlayPauseStateChanged);
|
||||||
Events.off(player, 'unpause', onPlayPauseStateChanged);
|
Events.off(player, 'unpause', onPlayPauseStateChanged);
|
||||||
Events.off(player, 'timeupdate', onTimeUpdate);
|
Events.off(player, 'timeupdate', onTimeUpdate);
|
||||||
Events.off(player, 'fullscreenchange', updateFullscreenIcon);
|
Events.off(player, 'fullscreenchange', onFullscreenChange);
|
||||||
Events.off(player, 'mediastreamschange', onMediaStreamsChanged);
|
Events.off(player, 'mediastreamschange', onMediaStreamsChanged);
|
||||||
currentPlayer = null;
|
currentPlayer = null;
|
||||||
}
|
}
|
||||||
|
@ -675,7 +683,7 @@ import { appRouter } from '../../../components/appRouter';
|
||||||
view.querySelector('.btnAirPlay').classList.remove('hide');
|
view.querySelector('.btnAirPlay').classList.remove('hide');
|
||||||
}
|
}
|
||||||
|
|
||||||
updateFullscreenIcon();
|
onFullscreenChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDisplayPercentByTimeOfDay(programStartDateMs, programRuntimeMs, currentTimeMs) {
|
function getDisplayPercentByTimeOfDay(programStartDateMs, programRuntimeMs, currentTimeMs) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue