vicrodh
3e0a718e0c
feat(slint): offline cache manager + remove/redownload + Settings Offline page
Slices 3 + 4 of the offline-cache port.
Slice 3 (controller, offline_cache.rs):
- remove_album (maintenance::remove_album_cached_tracks + library rows + live
row update), redownload_track / redownload_album(failed_only) (via
select_redownload_targets + reset_track_for_redownload + spawn), clear_all
(purge), open_folder (xdg-open / open the cache dir).
Slice 4 (manager + Settings):
- OfflineManagerView.slint: a standalone route (NavEntry::OfflineManager ->
ContentView.offline-manager, mounted in AppShell, mirrors PlaylistManager).
Stats bar (tracks count / size / limit / usage bar + edit-limit GB input +
open-folder + clear-all) over a scrolling album-header + track-row list with
a spinning/check/alert status glyph and per-row re-download / remove.
- offline_manager.rs: builds the album->track rollup + stats from index.db
(get_all_tracks), pushes [OfflineRow] + stats to OfflineManagerState; set_limit
(in-memory, session-scoped) + reload_soon (refresh after a mutation).
- OfflineManagerActions wired in main.rs (open/refresh/remove/redownload/
set-limit/clear-all/open-folder/play).
- Settings gains an "Offline" section (OfflineSettings.slint): Manage offline
cache (-> the manager), Open cache folder, Clear all. The Local-Library
rows (show-in-library, repair) arrive with the Local Library port.
qbz-slint compiles clean.
cc
2026-05-28 11:23:55 -06:00
..
2026-05-18 22:16:13 -06:00
2026-05-25 15:12:58 -06:00
2026-05-18 14:11:05 -06:00
2026-05-16 14:38:29 -06:00
2026-04-07 07:04:33 -06:00
2026-05-27 21:05:30 -06:00
2026-05-18 14:11:05 -06:00
2026-05-20 10:39:53 -06:00
2026-05-13 22:22:57 -06:00
2026-05-27 08:03:56 -06:00
2026-05-28 08:28:46 -06:00
2026-05-25 15:12:58 -06:00
2026-05-25 15:12:58 -06:00
2026-05-21 07:49:01 -06:00
2026-04-17 00:53:01 -06:00
2026-05-28 11:23:55 -06:00
2026-05-06 14:21:27 -06:00
2026-03-14 13:25:22 -06:00
2026-03-31 11:09:32 -06:00
2026-04-25 20:44:46 -06:00
2026-05-27 21:22:16 -06:00
2026-05-27 19:08:52 -06:00