Skip to content

feat: PlayerView album art redesign + library sorting settings#25

Merged
joshhbk merged 3 commits intomainfrom
perf/optimize-first-launch-startup
Jan 11, 2026
Merged

feat: PlayerView album art redesign + library sorting settings#25
joshhbk merged 3 commits intomainfrom
perf/optimize-first-launch-startup

Conversation

@joshhbk
Copy link
Owner

@joshhbk joshhbk commented Jan 11, 2026

Summary

  • Refactored PlayerView with full-screen album art background and brushed metal panels
  • Added library sorting settings allowing users to choose sort order (Most Played, Recently Played, Recently Added, Alphabetical)

Changes

PlayerView Redesign

  • Full-screen album art background with minimal blur (1200x1200 resolution for sharpness)
  • Brushed metal ShuffleBodyView panels for now playing info and controls
  • Theme-aware text colors ensuring proper contrast on all themes
  • Scalable ClickWheelView and PlayPauseButton components
  • New components: AlbumArtBackground, ShuffleBodyView, FrostedPanel, OverlaySongInfo

Library Sorting

  • New LibrarySortingSettingsView in Settings
  • Persists sort preference to UserDefaults
  • LibraryBrowserViewModel observes sorting changes and refreshes

Test plan

  • Verify album art displays sharply behind the player
  • Confirm text is legible on all theme colors (silver, blue, green, orange, pink)
  • Test library sorting options persist and refresh the library view
  • Check click wheel controls remain functional

🤖 Generated with Claude Code

joshuahughes-qm and others added 3 commits January 9, 2026 17:19
- Add batch addSongs() method with O(n) duplicate checking via Set
- Parallelize authorization check with song loading
- Prepare queue before dismissing loading screen for instant Play
- Add dynamic loading messages for user feedback
- Emit loading state immediately when Play tapped before queue ready
- Fix play button shader clipping (add clipShape to prevent white square)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
… panels

- Add full-screen album art background with minimal blur
- Create brushed metal ShuffleBodyView for now playing and controls panels
- Increase artwork resolution from 300x300 to 1200x1200 for sharper backgrounds
- Add scale parameter to ClickWheelView and PlayPauseButton for resizable controls
- Use theme-aware text colors for proper contrast on all themes
- Add AlbumArtBackground, ShuffleBodyView, FrostedPanel, OverlaySongInfo components
- Include SampleAlbumArt asset for Xcode previews

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add LibrarySortingSettingsView for choosing sort order
- Persist sort option to UserDefaults
- Update LibraryBrowserViewModel to observe sorting changes
- Add displayName to SortOption enum
- Link sorting settings from main SettingsView

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@joshhbk joshhbk merged commit c828bfa into main Jan 11, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants