fix: reconcile native state on app foreground; refresh playlist after delete

- Call reconcileNativeState() on visibilitychange→visible so the player UI
  updates immediately when the user opens the app after a background auto-advance,
  before deferred evaluateJavascript callbacks have had a chance to fire
- After deleteSong() succeeds, refresh the active playlist view (grid or detail)
  with a 2s delay to let Navidrome's background scan complete

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
HoneyandClaude Sonnet 4.6 committed 2026-05-29 01:01:56 +02:00
1 parent a2714dddaa
commit 07b8114cae
3 files changed
+32 -2

No files matched your search

+2 -1
View File
@@ -9,7 +9,7 @@ import {
initProgressScrub, updateProgress, updatePreviewProgress, stopPreview,
toggleRadioMode, starCurrent, downloadCurrent, renderQueue, playPreview,
toggleStar, dlSongLocal, _applyRadioBtn, _applyShuffleRepeat, _restoreLastPlayed, setPlayIcon,
npToggleStar, updateMediaSession, updateNpColorMode,
npToggleStar, updateMediaSession, updateNpColorMode, reconcileNativeState,
} from './player.js';
import {
navigate, _navGoBack, _navLoad, onHeaderSearch, closeHeaderSearch,
@@ -174,6 +174,7 @@ window.addEventListener('load', () => {
let _wasPlayingBeforeHide = false;
function _onForeground() {
reconcileNativeState();
const s = S.queue[S.qIdx];
if(!s) return;
updateMediaSession(s);