1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge branch 'feature-comicposition' of github.com:MinecraftPlaye/jellyfin-web into feature-comicposition

This commit is contained in:
Patrick Farwick 2021-10-05 20:11:18 +00:00
commit 22b1063629
2 changed files with 25 additions and 13 deletions

View file

@ -44,13 +44,7 @@ class AppRouter {
}, 0); }, 0);
}); });
document.addEventListener('viewshow', () => { document.addEventListener('viewshow', () => this.onViewShow());
const resolve = this.resolveOnNextShow;
if (resolve) {
this.resolveOnNextShow = null;
resolve();
}
});
this.baseRoute = window.location.href.split('?')[0].replace(this.getRequestFile(), ''); this.baseRoute = window.location.href.split('?')[0].replace(this.getRequestFile(), '');
// support hashbang // support hashbang
@ -417,6 +411,14 @@ class AppRouter {
}); });
} }
onViewShow() {
const resolve = this.resolveOnNextShow;
if (resolve) {
this.resolveOnNextShow = null;
resolve();
}
}
onForcedLogoutMessageTimeout() { onForcedLogoutMessageTimeout() {
const msg = this.forcedLogoutMsg; const msg = this.forcedLogoutMsg;
this.forcedLogoutMsg = null; this.forcedLogoutMsg = null;
@ -638,7 +640,11 @@ class AppRouter {
const ignore = route.dummyRoute === true || this.previousRoute.dummyRoute === true; const ignore = route.dummyRoute === true || this.previousRoute.dummyRoute === true;
this.previousRoute = route; this.previousRoute = route;
if (ignore) return; if (ignore) {
// Resolve 'show' promise
this.onViewShow();
return;
}
this.handleRoute(ctx, next, route); this.handleRoute(ctx, next, route);
}; };

View file

@ -675,14 +675,14 @@ function tryRemoveElement(elem) {
} }
onEndedInternal(this, elem, this.onError); onEndedInternal(this, elem, this.onError);
if (destroyPlayer) {
this.destroy();
}
} }
this.destroyCustomTrack(elem); this.destroyCustomTrack(elem);
if (destroyPlayer) {
this.destroy();
}
return Promise.resolve(); return Promise.resolve();
} }
@ -1062,7 +1062,13 @@ function tryRemoveElement(elem) {
workerUrl: `${appRouter.baseUrl()}/libraries/subtitles-octopus-worker.js`, workerUrl: `${appRouter.baseUrl()}/libraries/subtitles-octopus-worker.js`,
legacyWorkerUrl: `${appRouter.baseUrl()}/libraries/subtitles-octopus-worker-legacy.js`, legacyWorkerUrl: `${appRouter.baseUrl()}/libraries/subtitles-octopus-worker-legacy.js`,
onError() { onError() {
onErrorInternal(htmlVideoPlayer, 'mediadecodeerror'); // HACK: Clear JavascriptSubtitlesOctopus: it gets disposed when an error occurs
htmlVideoPlayer.#currentSubtitlesOctopus = null;
// HACK: Give JavascriptSubtitlesOctopus time to dispose itself
setTimeout(() => {
onErrorInternal(htmlVideoPlayer, 'mediadecodeerror');
}, 0);
}, },
timeOffset: (this._currentPlayOptions.transcodingOffsetTicks || 0) / 10000000, timeOffset: (this._currentPlayOptions.transcodingOffsetTicks || 0) / 10000000,