Commit Graph

13 Commits

Author SHA1 Message Date
4c50a5faab ui: queue: add option to export/import 2026-03-24 21:31:15 -07:00
68c23b5f63 feat(queue): auto-scroll to currently playing on queue open
Adds a visible prop to Queue that triggers auto-scroll to the currently
playing track when the queue becomes visible. PlayerMobile passes the
drawer open state, PlayerDesktop passes whether a track exists.
2026-02-15 22:14:36 -08:00
63145c128e feat(queue): add scroll to currently playing button
Adds a scrollToIndex method to VirtualList and a locate button in the
Queue header that scrolls to center the currently playing track.
2026-02-15 22:14:36 -08:00
c0ff938bf3 feat(queue): add confirmation dialog when clearing the queue
Wraps the clear button in an AlertDialog that shows the number of songs
to be removed, requiring explicit confirmation before clearing.
2026-02-15 22:14:36 -08:00
6fca5bae39 perf(player): virtualize queue list rendering
Extract a generic VirtualList.svelte component that only renders
visible rows + overscan buffer using absolute positioning in a tall
sentinel div. Queue.svelte now uses VirtualList with 64px row height
(supporting 2-line titles) instead of rendering all items.

This reduces DOM nodes from 1000+ to ~20 for large queues.
2026-02-11 23:35:30 -08:00
7e3a22f14b ui: queue: hide grab handle if hover available 2026-02-11 22:00:41 -08:00
cdd90016f8 add extra song information to player 2026-02-10 05:25:28 -08:00
197b9267c4 drag and drop but nicer 2026-02-10 01:58:33 -08:00
ed9fcbe116 drag and drop init 2026-02-10 01:55:49 -08:00
c8220eec02 fix play track in queue 2026-02-10 01:35:42 -08:00
892f43381b fix stupid slider 2026-02-10 00:58:40 -08:00
f9fe6a2d11 WIP: global player refactor pt. 2 2026-02-09 23:42:08 -08:00
aea41df214 WIP: global player refactor pt. 1 2026-02-09 23:19:17 -08:00