diff --git a/desktop/src/scripts/anime/player.js b/desktop/src/scripts/anime/player.js index 8a57ed5..0642ac7 100644 --- a/desktop/src/scripts/anime/player.js +++ b/desktop/src/scripts/anime/player.js @@ -249,6 +249,7 @@ const AnimePlayer = (function() { els.video.onloadedmetadata = onLoadedMetadata; els.video.onended = onEnded; els.video.onvolumechange = onVolumeChange; + els.video.onseeked = onSeeked; } } @@ -437,6 +438,16 @@ const AnimePlayer = (function() { _rpcActive = true; } + function onSeeked() { + if (!els.video || els.video.paused || !els.video.duration) return; + + const elapsed = Math.floor(els.video.currentTime); + const start = Math.floor(Date.now() / 1000) - elapsed; + const end = start + Math.floor(els.video.duration); + + sendRPC({ startTimestamp: start, endTimestamp: end }); + } + function onPause() { if (els.playPauseBtn) { els.playPauseBtn.innerHTML = ` diff --git a/docker/src/scripts/anime/player.js b/docker/src/scripts/anime/player.js index 8a57ed5..0642ac7 100644 --- a/docker/src/scripts/anime/player.js +++ b/docker/src/scripts/anime/player.js @@ -249,6 +249,7 @@ const AnimePlayer = (function() { els.video.onloadedmetadata = onLoadedMetadata; els.video.onended = onEnded; els.video.onvolumechange = onVolumeChange; + els.video.onseeked = onSeeked; } } @@ -437,6 +438,16 @@ const AnimePlayer = (function() { _rpcActive = true; } + function onSeeked() { + if (!els.video || els.video.paused || !els.video.duration) return; + + const elapsed = Math.floor(els.video.currentTime); + const start = Math.floor(Date.now() / 1000) - elapsed; + const end = start + Math.floor(els.video.duration); + + sendRPC({ startTimestamp: start, endTimestamp: end }); + } + function onPause() { if (els.playPauseBtn) { els.playPauseBtn.innerHTML = `