- Add consistent scrollbar styling to all view components
- Scrollbar is visible (subtle) by default, brighter on hover
- Position scrollbar 8px from right edge
- Each view now handles its own scroll container
Root cause: Queue tracks were being built without quality fields (hires,
bit_depth, sample_rate) in multiple views. When auto-advancing or skipping
tracks, the playerStore would have undefined quality data, causing
QualityBadge to default to CD tier.
Fixed by:
- Adding quality fields to queue track builders in PlaylistDetailView,
FavoritesView, ArtistDetailView, and LocalLibraryView
- Replacing all 'CD Quality' fallbacks with '-' placeholder in +page.svelte
- Adding bitDepth/samplingRate fields to ArtistDetailView DisplayTrack
- Add Heart icon button next to artist name
- Check favorite status on mount from get_favorites API
- Toggle favorite with add_favorite/remove_favorite API
- Show filled heart when artist is favorited
- Remove blue circle from play/pause, now uses same style as other controls
- Add Popular Tracks section to ArtistDetailView with Play All
- Search tracks by artist name and filter results
- Connect onTrackPlay to play tracks from artist view
- Add offset parameter to search_albums, search_tracks, search_artists
- Backend now properly passes offset to Qobuz API
- Fixes duplicate results when loading more search results