From 7014d85fcd59a606558b8109aeebfe2b09e2c291 Mon Sep 17 00:00:00 2001 From: Pas <74743263+Pasithea0@users.noreply.github.com> Date: Mon, 7 Jul 2025 16:21:59 -0600 Subject: [PATCH] fix "end time" to account for playback speed --- src/components/player/atoms/Time.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/components/player/atoms/Time.tsx b/src/components/player/atoms/Time.tsx index e1340407..cc48031c 100644 --- a/src/components/player/atoms/Time.tsx +++ b/src/components/player/atoms/Time.tsx @@ -8,6 +8,7 @@ import { durationExceedsHour, formatSeconds } from "@/utils/formatSeconds"; export function Time(props: { short?: boolean }) { const timeFormat = usePlayerStore((s) => s.interface.timeFormat); const setTimeFormat = usePlayerStore((s) => s.setTimeFormat); + const playbackRate = usePlayerStore((s) => s.mediaPlaying.playbackRate); const { duration: timeDuration, @@ -32,12 +33,16 @@ export function Time(props: { short?: boolean }) { ); const secondsRemaining = Math.abs(currentTime - timeDuration); + // Adjust seconds remaining based on playback speed + const secondsRemainingAdjusted = + playbackRate > 0 ? secondsRemaining / playbackRate : secondsRemaining; + const timeLeft = formatSeconds( secondsRemaining, durationExceedsHour(secondsRemaining), ); const timeWatched = formatSeconds(currentTime, hasHours); - const timeFinished = new Date(Date.now() + secondsRemaining * 1e3); + const timeFinished = new Date(Date.now() + secondsRemainingAdjusted * 1e3); const duration = formatSeconds(timeDuration, hasHours); let localizationKey =