feat: dynamic NP cover color, taller settings modal, fix Android song sync

- Now Playing: add "Dynamische Hintergrundfarbe" toggle in Theme settings;
  when on, np-bg uses higher saturation/brightness so the cover color really
  shows through the blurred background
- Settings modal: extend to bottom nav on mobile (was leaving ~74px dead space
  for the player bar which the overlay already covers at z-index 200)
- Android: fix onTrackChanged always staying on the first song — the snapshot
  from MediaController can lag behind ExoPlayer on auto-advance, causing the
  stale currentIndex to overwrite the correct p.index; now only advance to
  a higher live index (for rapid-skip catch-up) and use p.trackId directly
  instead of the potentially-stale snapshot id for the queue-mismatch guard

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
HoneyandClaude Sonnet 4.6 committed 2026-05-28 00:28:06 +02:00
1 parent c405465f5c
commit 9d81cdde31
5 files changed
+35 -15

No files matched your search

+5 -1
View File
@@ -563,7 +563,7 @@ button:focus{outline:none}
.toast-container{bottom:calc(var(--player-h) + 80px + 16px)}
.jobs-panel{bottom:calc(var(--player-h) + 80px + 16px)}
.bnav-item{padding:6px 2px;box-sizing:border-box}
#settings-modal{align-items:flex-start;padding-top:max(env(safe-area-inset-top),16px);padding-bottom:calc(var(--player-h) + 80px + env(safe-area-inset-bottom) + 8px)}
#settings-modal{align-items:flex-start;padding-top:max(env(safe-area-inset-top),16px);padding-bottom:calc(80px + env(safe-area-inset-bottom))}
#settings-modal .modal{max-height:100%!important;overflow:hidden}
}
@@ -590,6 +590,10 @@ button:focus{outline:none}
will-change:opacity;
z-index:0;
}
/* Dynamic cover color mode: more vivid/saturated background */
.np-overlay.dynamic-color .np-bg{
filter:blur(60px) brightness(.5) saturate(3);
}
.np-inner{
position:relative;z-index:1;