From 47265991591fb86073abe147525548f6500d68ff Mon Sep 17 00:00:00 2001 From: Sanchita Date: Sat, 31 Jan 2026 07:32:12 +0530 Subject: [PATCH] fixed playback speed issue --- .../www.youtube.com/appearance.js | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/js&css/web-accessible/www.youtube.com/appearance.js b/js&css/web-accessible/www.youtube.com/appearance.js index 0a447dcab..81a087966 100644 --- a/js&css/web-accessible/www.youtube.com/appearance.js +++ b/js&css/web-accessible/www.youtube.com/appearance.js @@ -155,34 +155,34 @@ ImprovedTube.formatSecond = function (rTime) { }; ImprovedTube.playerRemainingDuration = function () { - const liveBadge = document.querySelector('button.ytp-live-badge.ytp-button.ytp-live-badge-is-livehead'); - if (liveBadge) return; + const liveBadge = document.querySelector( + 'button.ytp-live-badge.ytp-button.ytp-live-badge-is-livehead' + ); + if (liveBadge) return; - const currentEl = document.querySelector('.ytp-time-current'); - const durationEl = document.querySelector('.ytp-time-duration'); + const currentEl = document.querySelector('.ytp-time-current'); + const durationEl = document.querySelector('.ytp-time-duration'); + if (!currentEl || !durationEl) return; - if (!currentEl || !durationEl) return; + const player = ImprovedTube.elements.player; + if (!player) return; - const player = ImprovedTube.elements.player; - if (!player) return; - - const currentTime = player.getCurrentTime(); - const duration = player.getDuration(); - - if (!isFinite(duration) || !isFinite(currentTime) || duration <= 0) return; + const currentTime = player.getCurrentTime(); + const duration = player.getDuration(); + if (!isFinite(duration) || !isFinite(currentTime) || duration <= 0) return; - const remainingSeconds = Math.max(0, duration - currentTime); - const rTime = ImprovedTube.formatSecond(Math.floor(remainingSeconds)); - - if (!rTime || rTime.includes('NaN')) return; + const remainingSeconds = Math.max(0, duration - currentTime); + const rTime = ImprovedTube.formatSecond(Math.floor(remainingSeconds)); + if (!rTime || rTime.includes('NaN')) return; - if (!durationEl.dataset.itOriginal) { - durationEl.dataset.itOriginal = durationEl.textContent; - } + // Save original duration ONCE (clean version) + if (!durationEl.dataset.itOriginal) { + durationEl.dataset.itOriginal = durationEl.textContent.trim(); + } - // Overwrite text - durationEl.textContent = - durationEl.dataset.itOriginal + ' (-' + rTime + ')'; + // Always reset to original and append remaining time + durationEl.textContent = + `${durationEl.dataset.itOriginal} (-${rTime})`; };