Commit Graph

18 Commits

Author SHA1 Message Date
Jonathan Sykes
9e960cf70f iPhone background audio in every playback mode; Classic playlist card actions; export sheet bar
- Dual mode (separate video + audio, used by adaptive streams and the iPhone EQ
  copies): going to the background now makes the audio the master, so progress,
  Now Playing and auto-advance keep working while iOS has the video suspended
  (the paused video used to be the only source of "ended", so playback stopped
  after the current song). The picture is re-synced on return.
- A track that starts while the app is in the background (auto-advance, the
  lock-screen Next button) starts as audio — iOS will not start a <video> there —
  and gets its picture back at the same position when the app returns.
- The handoff also runs on pagehide and when iOS pauses the master video while
  the page is hidden, for when visibilitychange arrives too late.
- Classic: playlist cards place their three actions as a 2x2 block (note + add
  on top, remove below) instead of the note button wrapping to the bottom-left.
- Save to this device: hide the full progress bar once the file is ready; it
  read as a squashed, broken button above "Save to Photos / Files".
2026-10-03 17:46:23 +08:00
Jonathan Sykes
985063648f Icon-only playlist header and filter-row actions, one-row transport, resumable update download
- Playlist title wraps within 90% of the width; rename and share are icons beside it,
  and tapping the title opens the rename box showing the full name
- Offline, pin, select and delete are icon buttons to the right of the filter input
- Transport is one row again: prev, back 10, play, forward 10, next
- Update download stages each file as it arrives so a retry only fetches what is
  missing, keeps 4 requests in flight and allows 5 minutes
2026-10-02 20:59:51 +08:00
Claude
ee248d2303 IndexedDB search library (1000x100, 15-day copies, Update search), server video metadata for instant local results 2026-10-02 02:15:28 +00:00
Claude
14e2307a92 Keep search results with thumbnails until cleared in Settings; add stale-while-revalidate search and longer asset caching 2026-10-01 22:04:51 +00:00
Claude
19973c75c0 Add the Glass Stage layout theme with overlay controls, 10 s skips, quick chips and stacked tiles 2026-10-01 21:40:20 +00:00
Claude
36fc5ff9e4 Merge Queue and Playlist into one Add button and put Service mode in the common actions 2026-10-01 21:17:37 +00:00
Claude
859ecd2255 Move speaker and playback mode beside the volume slider with a volume-aware icon 2026-10-01 21:13:27 +00:00
Claude
9be4844b48 Show only the dots on More controls while A-B markers are present 2026-10-01 21:09:59 +00:00
Claude
b3a43c66db Label the fullscreen button, add a mini fullscreen icon and show A-B markers beside it 2026-10-01 21:09:00 +00:00
Claude
25e7a28b6a Merge shuffle, repeat list and loop one into one playback mode button 2026-10-01 21:03:48 +00:00
Claude
f9cb7edeb2 Replace transport emoji with centred SVG icons and distinguish loop-one from repeat-list 2026-10-01 21:02:23 +00:00
Claude
9f313f61af Move secondary player controls into a More controls sheet 2026-10-01 20:58:15 +00:00
Claude
88f878b8eb Move rarely used video actions into a More actions sheet 2026-10-01 20:55:04 +00:00
Claude
47826536a6 Make the refresh button 10% of the row width 2026-10-01 20:43:41 +00:00
Claude
9eb5e98048 Add Gallery action beside Save and an icon-only refresh beside Play all 2026-10-01 20:39:17 +00:00
Claude
02b337fcbc Add save-to-device export, server export route and an On other devices P2P list 2026-10-01 18:53:00 +00:00
Claude
9d74769029 Add deck tabs, uniform action buttons, lyric reports in the player panel and a song list in the lyrics studio 2026-09-30 15:57:11 +00:00
Claude
e64880c163 Redesign playlist header, player deck, now-playing actions and lyrics panel layout 2026-09-30 15:29:44 +00:00