Fix setCurrentTimeIfNeeded calc + change preload to auto to resume in WebOS

This commit is contained in:
Samcon 2022-06-26 14:35:50 +03:00
parent c8590d37ed
commit cab6e34390
2 changed files with 5 additions and 1 deletions

View File

@ -131,7 +131,8 @@ import { Events } from 'jellyfin-apiclient';
} }
function setCurrentTimeIfNeeded(element, seconds) { function setCurrentTimeIfNeeded(element, seconds) {
if (Math.abs(element.currentTime || 0, seconds) <= 1) { // If it's worth skipping (1 sec or less of a difference)
if (Math.abs((element.currentTime || 0) - seconds) >= 1) {
element.currentTime = seconds; element.currentTime = seconds;
} }
} }

View File

@ -1375,6 +1375,9 @@ function tryRemoveElement(elem) {
// Can't autoplay in these browsers so we need to use the full controls, at least until playback starts // Can't autoplay in these browsers so we need to use the full controls, at least until playback starts
if (!appHost.supports('htmlvideoautoplay')) { if (!appHost.supports('htmlvideoautoplay')) {
html += '<video class="' + cssClass + '" preload="metadata" autoplay="autoplay" controls="controls" webkit-playsinline playsinline>'; html += '<video class="' + cssClass + '" preload="metadata" autoplay="autoplay" controls="controls" webkit-playsinline playsinline>';
} else if (browser.web0s) {
// in webOS, setting peload auto allows resuming videos
html += '<video class="' + cssClass + '" preload="auto" autoplay="autoplay" webkit-playsinline playsinline>';
} else { } else {
// Chrome 35 won't play with preload none // Chrome 35 won't play with preload none
html += '<video class="' + cssClass + '" preload="metadata" autoplay="autoplay" webkit-playsinline playsinline>'; html += '<video class="' + cssClass + '" preload="metadata" autoplay="autoplay" webkit-playsinline playsinline>';