Commit Graph

4 Commits

Author SHA1 Message Date
Ultradesu 37a6ccaf0c fix: liked state not showing until track row disappears/reappears
likedTrackIds loads async after views appear, so isLiked was always
false on initial render. Add onChange(of: likedTrackIds) to all track
row types and the player bar to re-sync when the set is populated.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-09 10:49:05 +01:00
Ultradesu bdab606360 feat: connected devices sync, unified queue, scrobbling, v1.2
- Unified queue model: replace history/queue split with tracks[]+currentIndex
- Connected devices: fix Mac not pausing when another device becomes active
- Fix applyFullState playing wrong track (stale currentTrack reference)
- Fix seek in client mode (use `time` field per web client convention)
- Fix seek UI snapping back with optimistic seek override
- Add play count scrobbling via POST /api/player/history
- Playlists tab auto-loads on switch (no retry button needed)
- Fix share button to copy proper server-based track URL
- Device icon color: primary when active, accent when remote
- Full queue transfer between devices via transfer_state command
- Bump version to 1.2

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
v1.2
2026-06-08 18:33:00 +01:00
Ultradesu 2f8cff528c init 2026-06-08 16:50:16 +01:00
Ultradesu 2d4e623a9f Initial Commit 2026-06-08 13:21:11 +01:00