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

Merge pull request #1095 from JustAMan/fix-subs-on-mobile

Fix .ass subtitles not starting on mobile
This commit is contained in:
Vasily 2020-04-16 14:12:03 +03:00 committed by GitHub
commit a4324665f0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 2 deletions

View file

@ -162,7 +162,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve
} }
} }
function seekOnPlaybackStart(instance, element, ticks) { function seekOnPlaybackStart(instance, element, ticks, onMediaReady) {
var seconds = (ticks || 0) / 10000000; var seconds = (ticks || 0) / 10000000;
@ -175,6 +175,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve
if (element.duration >= seconds) { if (element.duration >= seconds) {
// media is ready, seek immediately // media is ready, seek immediately
setCurrentTimeIfNeeded(element, seconds); setCurrentTimeIfNeeded(element, seconds);
if (onMediaReady) onMediaReady();
} else { } else {
// update video player position when media is ready to be sought // update video player position when media is ready to be sought
var events = ["durationchange", "loadeddata", "play", "loadedmetadata"]; var events = ["durationchange", "loadeddata", "play", "loadedmetadata"];
@ -189,6 +190,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve
events.map(function(name) { events.map(function(name) {
element.removeEventListener(name, onMediaChange); element.removeEventListener(name, onMediaChange);
}); });
if (onMediaReady) onMediaReady();
} }
}; };
events.map(function (name) { events.map(function (name) {

View file

@ -857,7 +857,9 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa
loading.hide(); loading.hide();
htmlMediaHelper.seekOnPlaybackStart(self, e.target, self._currentPlayOptions.playerStartPositionTicks); htmlMediaHelper.seekOnPlaybackStart(self, e.target, self._currentPlayOptions.playerStartPositionTicks, function () {
if (currentSubtitlesOctopus) currentSubtitlesOctopus.resize();
});
if (self._currentPlayOptions.fullscreen) { if (self._currentPlayOptions.fullscreen) {