zarzet
987245de71
style(library): use theme colors for Material collections
2026-09-28 11:58:50 +07:00
zarzet
7141ca980f
fix(library): sync track playback controls
2026-08-30 00:43:13 +07:00
zarzet
5dac33dfa4
fix(download): preserve finalization metadata and library labels
2026-08-29 00:31:25 +07:00
zarzet
933a3c49e2
fix(library): persist artwork previews and stabilize completion
2026-08-27 21:42:38 +07:00
zarzet
fca8e46412
fix(library): show play action for completed batch items
2026-08-27 17:04:58 +07:00
zarzet
aec7bf7a1b
fix(library): show complete quality labels
2026-08-23 11:36:15 +07:00
zarzet
6742fe886f
fix(a11y): label interactive controls
2026-08-04 16:40:48 +07:00
zarzet
40034d184f
refactor(library): unify track cards
2026-07-29 17:10:57 +07:00
zarzet
454ef53977
feat(library): add quality label display modes
2026-07-27 17:25:39 +07:00
zarzet
e4cd52f29f
feat(library): highlight high-bitrate quality badges
2026-07-27 16:58:58 +07:00
zarzet
8fe2662c0a
fix(queue): keep cancelled downloads retryable across every cancel path and app restarts
2026-07-27 01:13:23 +07:00
zarzet
23f18ab276
fix(queue): give completion-bridge cells swipe navigation into the library list
2026-07-27 01:08:32 +07:00
zarzet
5481f8e8cf
feat(ui): smooth download progress updates
2026-07-23 13:36:22 +07:00
zarzet
b2726db84a
fix(queue): bridge completed downloads into library
2026-07-22 15:55:07 +07:00
zarzet
6f121c7543
fix(queue): open completed batch track metadata
2026-07-15 21:45:35 +07:00
zarzet
17dbcc1338
perf(library): lazy-load collections and dispose queries
2026-07-15 21:32:43 +07:00
zarzet
860649e3ac
refactor(queue): split _QueueTabState method clusters into part files
...
queue_tab.dart was 7,567 lines with a single 7,300-line State class.
Continue the existing part-file split by moving six cohesive method
clusters into private extensions on _QueueTabState (same library, so
private state access is unchanged): selection mode, navigation/open
actions, collection item builders, filter UI, batch actions, and
queue/library item builders. setState calls in the parts go through a
_setState forwarder since @protected members cannot be called from
extensions. queue_tab.dart is now 2,462 lines.
# Conflicts:
# lib/screens/queue_tab.dart
2026-07-10 10:15:56 +07:00