fix(favorites): reflect player-bar song star in track lists (#1063)

* fix(favorites): reflect player-bar song star in track lists

Liking a song from the player bar / fullscreen / shortcuts wrote only to
the session `starredOverrides` map, which onStarSuccess deleted once the
server sync resolved. List views (AlbumDetail, Favorites, RandomMix,
playlists) seed their starred state from a one-shot fetch and reflect
later changes only by merging that override, so the row reverted the
instant the sync completed — the like never stuck in the list. Toggling
from a list row also updated the row's own local state, which is why that
direction already worked.

Keep the star override as the durable session source of truth (stop
deleting it on success); the in-memory Track / queue-cache patches stay.
The override is unpersisted and superseded by the next toggle, so it never
diverges from the server. Ratings keep their existing clear-on-success
behavior.
This commit is contained in:
‮Artem
2026-06-11 16:07:02 +03:00
committed by GitHub
parent 90452a8f8c
commit ea304357ca
4 changed files with 23 additions and 18 deletions
+1
View File
@@ -259,6 +259,7 @@ const CONTRIBUTOR_ENTRIES = [
'Player: cap persisted queue to ±250-track window — fixes QuotaExceededError on large playlists (PR #756)',
'Playlists: virtualized tracklist for large playlists — no UI freeze on 10k+ tracks (PR #755)',
'Favorites: virtualized songs tracklist for large starred collections (PR #805)',
'Favorites: player-bar star toggle stays synced with album, playlist, and favorites tracklists (PR #1063)',
],
},
{