From 77ccfc8234e93aa28c5cb341762dd40c33892cd8 Mon Sep 17 00:00:00 2001 From: Julien Maille Date: Thu, 25 Dec 2025 21:20:19 +0100 Subject: [PATCH] Fix muted status persistence and revert volume storage refactor --- js/events.js | 9 +++++++-- js/storage.js | 2 ++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/js/events.js b/js/events.js index 931ee08..7111668 100644 --- a/js/events.js +++ b/js/events.js @@ -103,17 +103,23 @@ export function initializePlayerEvents(player, audioPlayer, scrobbler) { volumeBtn.innerHTML = (muted || volume === 0) ? SVG_MUTE : SVG_VOLUME; const effectiveVolume = muted ? 0 : volume * 100; volumeFill.style.setProperty('--volume-level', `${effectiveVolume}%`); + volumeFill.style.width = `${effectiveVolume}%`; }; volumeBtn.addEventListener('click', () => { audioPlayer.muted = !audioPlayer.muted; + localStorage.setItem('muted', audioPlayer.muted); }); audioPlayer.addEventListener('volumechange', updateVolumeUI); - // Initialize volume from localStorage + // Initialize volume and mute from localStorage const savedVolume = parseFloat(localStorage.getItem('volume') || '0.7'); + const savedMuted = localStorage.getItem('muted') === 'true'; + audioPlayer.volume = savedVolume; + audioPlayer.muted = savedMuted; + volumeFill.style.width = `${savedVolume * 100}%`; volumeBar.style.setProperty('--volume-level', `${savedVolume * 100}%`); updateVolumeUI(); @@ -272,7 +278,6 @@ function initializeSmoothSliders(audioPlayer, player) { volumeBar.style.setProperty('--volume-level', `${position * 100}%`); localStorage.setItem('volume', position); }); - volumeBar.addEventListener('click', e => { if (!isAdjustingVolume) { seek(volumeBar, e, position => { diff --git a/js/storage.js b/js/storage.js index 0d9b75c..abf0783 100644 --- a/js/storage.js +++ b/js/storage.js @@ -398,6 +398,8 @@ export const queueManager = { } }; + + // System theme listener if (typeof window !== 'undefined' && window.matchMedia) { window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', e => {