feat(locallibrary): local album detail (reuses AlbumPageView)

Clicking a local album (grid card or a track row's album link) opens its
detail in the shared AlbumPageView. navigate_local_album loads the album's
metadata-grouped tracks (get_album_tracks_metadata) + fills folder covers,
populates AlbumState (title / album-artist or "Various Artists" / cover /
quality / "N tracks · duration" / disc-ordered TrackRows) with a new is-local
flag, and resolves the cover from disk. Play routes to local: the media-action
dispatcher gains a guard — when the album view shows a local album, album play
-> play_local_album, a track row -> play the album from that track; Qobuz
album/track play is untouched (guarded by view==Album && is-local).

cc
This commit is contained in:
vicrodh committed 2026-05-29 07:26:21 -06:00
1 parent b9b6d141f8
commit 79551cebb7
5 files changed
+192 -4

No files matched your search

+3
View File
@@ -288,6 +288,9 @@ export global AlbumState {
in property <[string]> awards: [];
in property <[TrackItem]> tracks: [];
in property <bool> loading: false;
// True when this is a Local Library album (local files / offline copies).
// Routes the play actions to local playback + hides Qobuz-only chrome.
in property <bool> is-local: false;
}
// Album-view actions wired to Rust callbacks.