when paused 2x speed still possible

This commit is contained in:
2026-05-15 03:23:02 +02:00
parent 53ca8e03c7
commit 9cc2059bc8

View File

@@ -1453,8 +1453,9 @@
setupTapOverlay(slide); setupTapOverlay(slide);
// ── Hold-to-2× speed logic (shared by multiple triggers) ── // ── Hold-to-2× speed logic (shared by multiple triggers) ──
let speedTimer = null; let speedTimer = null;
let speedActive = false; let speedActive = false;
let speedEndedAt = 0; let speedEndedAt = 0;
let wasPausedByHold = false;
const endSpeed = () => { const endSpeed = () => {
clearTimeout(speedTimer); clearTimeout(speedTimer);
@@ -1465,7 +1466,13 @@
speedActive = false; speedActive = false;
speedEndedAt = Date.now(); speedEndedAt = Date.now();
const media = slide.querySelector('video') || slide.querySelector('audio'); const media = slide.querySelector('video') || slide.querySelector('audio');
if (media) media.playbackRate = 1; if (media) {
media.playbackRate = 1;
if (wasPausedByHold) {
media.pause();
wasPausedByHold = false;
}
}
const ind = document.getElementById('speed-indicator'); const ind = document.getElementById('speed-indicator');
if (ind) ind.classList.remove('show'); if (ind) ind.classList.remove('show');
} }
@@ -1480,6 +1487,10 @@
speedActive = true; speedActive = true;
const media = slide.querySelector('video') || slide.querySelector('audio'); const media = slide.querySelector('video') || slide.querySelector('audio');
if (media) { if (media) {
if (media.paused) {
wasPausedByHold = true;
media.play().catch(() => {});
}
media.playbackRate = 2; media.playbackRate = 2;
const ind = document.getElementById('speed-indicator'); const ind = document.getElementById('speed-indicator');
if (ind) ind.classList.add('show'); if (ind) ind.classList.add('show');