zarzet
927fd033cd
perf(nas): process listings, artwork caches, and upload recovery natively
...
Move WebDAV/HTML parsing, content-addressed artwork caching, cover promotion, and streamed upload verification to native workers. Preserve proxy authentication, cancellation, cache limits, and deep XML fallback behavior.
2026-10-06 23:27:07 +07:00
zarzet
867371cb67
feat(native): add cancellable data workers and streamed file hashing
...
Introduce Android, iOS, and Dart worker dispatch with queued cancellation, binary inputs, and background JSON codecs. Move APK verification to streamed native SHA256 while retaining the isolated fallback.
2026-10-06 23:25:39 +07:00
zarzet
6741aada4a
fix(settings): retain pending preferences during asynchronous loading
2026-10-06 22:00:48 +07:00
zarzet
66c5f5a86a
fix(recents): preserve early edits during history loading
2026-10-06 22:00:47 +07:00
zarzet
87255a5c7d
fix(logs): retain polling ownership across restart and clear
2026-10-06 22:00:46 +07:00
zarzet
2ce3c33c87
fix(network): close request-owned HTTP clients reliably
2026-10-06 22:00:46 +07:00
zarzet
10db2f272c
fix(backup): close archive outputs when extraction fails
2026-10-06 22:00:45 +07:00
zarzet
4228791c13
refactor(player): isolate session writes and content URI cache ownership
2026-10-06 22:00:15 +07:00
zarzet
0fdcbc3cbd
fix(playlists): prevent overlapping picker submissions
2026-10-06 22:00:14 +07:00
zarzet
92e3fa94ec
fix(network): discard stale folder browsing responses
2026-10-06 22:00:14 +07:00
zarzet
7057b0c349
refactor(albums): share immutable track and disc ordering
2026-10-06 22:00:13 +07:00
zarzet
96f57ddef8
refactor(downloads): normalize completion audio and share album ReplayGain
2026-10-06 22:00:12 +07:00
zarzet
4489136d38
fix(downloads): recover queue ownership after setup failures
2026-10-06 21:59:55 +07:00
zarzet
8f021b01c7
fix(playlists): serialize collection changes and isolate domain models
2026-10-06 21:59:54 +07:00
zarzet
cd313e1bfd
fix(history): serialize mutations and preserve newer file metadata
2026-10-06 21:59:53 +07:00
zarzet
90165d471c
test(providers): keep notifier fixture counters private
2026-10-06 21:59:18 +07:00
zarzet
9b89f2300c
perf(player): avoid redundant lyric paints and background sampling
2026-10-06 21:59:18 +07:00
zarzet
04f679a26e
perf(stats): ignore playback position-only changes
2026-10-06 21:59:17 +07:00
zarzet
42b428ca61
perf(widgets): skip unchanged playback state updates
2026-10-06 21:58:57 +07:00
zarzet
5de3f0469b
perf(network): reduce directory listing and connection allocations
2026-10-06 21:58:56 +07:00
zarzet
393c11104e
perf(library): simplify unfiltered album queries
2026-10-06 21:58:55 +07:00
zarzet
4be1073203
fix(lyrics): hold current line highlight until the next lead
2026-10-06 14:20:54 +07:00
zarzet
0a29046982
perf(downloads): bound scheduler waiters and prevent overlapping retries
2026-10-06 13:09:54 +07:00
zarzet
2df72112e4
refactor(downloads): extract completion audio and upload staging
2026-10-06 13:09:54 +07:00
zarzet
7b9405aaf6
refactor(downloads): separate metadata resolution and embedding
2026-10-06 13:09:45 +07:00
zarzet
b8787168d1
refactor(downloads): isolate typed results and audio finalization
2026-10-06 13:09:26 +07:00
zarzet
7493c37698
refactor(android): isolate native download history persistence
2026-10-06 13:08:14 +07:00
zarzet
4d65b590e1
refactor(metadata): separate file save persistence from editor
2026-10-06 13:08:13 +07:00
zarzet
d98ab4852d
fix(library): distinguish unavailable storage from missing files
2026-10-06 13:08:12 +07:00
zarzet
450dc213a9
fix(player): retire deleted sources and stale SAF copies
2026-10-06 13:07:58 +07:00
zarzet
08e4f1b41d
refactor(logging): isolate native log transport
2026-10-06 13:07:57 +07:00
zarzet
a6c1409ef5
fix(library): remove deleted files from both library indexes
2026-10-06 00:30:45 +07:00
zarzet
772bd97f7d
fix(downloads): preserve filenames after decryption and conversion
2026-10-06 00:04:14 +07:00
zarzet
8bd1a998d0
perf(glass): cull selection masks outside the moving lens
2026-10-05 20:33:49 +07:00
zarzet
963eaa5fd5
perf(glass): omit collapsed navbar backdrop layers
2026-10-05 20:31:10 +07:00
zarzet
5b28db1375
perf(ui): retain marquee content while scrolling
2026-10-05 19:20:05 +07:00
zarzet
a5fdb8db92
fix(library): serialize scan admission and retain reconnect requests
2026-10-05 18:05:30 +07:00
zarzet
d0114b1049
fix(artwork): promptly dispose failed video decoders
2026-10-05 17:53:20 +07:00
zarzet
e3126153e6
perf(artwork): reuse decoded covers and preserve in-flight cache writes
2026-10-05 17:53:19 +07:00
zarzet
dde79eeea2
fix(home): protect fresh feeds from late cache restoration
2026-10-05 17:53:19 +07:00
zarzet
cfeeaa3084
fix(search): reject pending completions after clearing results
2026-10-05 17:53:19 +07:00
zarzet
bf40ef8ebe
fix(library): honor album artist filters in summary counts
2026-10-05 17:53:18 +07:00
zarzet
a8712a44b1
perf(library): defer local providers while the feature is disabled
2026-10-05 17:53:18 +07:00
zarzet
6d68ef00ab
perf(autoplay): index listening history and reuse normalized metadata
2026-10-05 17:53:17 +07:00
zarzet
a3102b3b34
perf(library): coalesce availability probes and reject stale indexes
2026-10-05 17:52:37 +07:00
zarzet
2e17963804
refactor(library): isolate schema, row mapping and queue queries
...
Repair lookup counts during schema migration and resolve local FTS matches through the base table.
2026-10-05 03:28:48 +07:00
zarzet
f8f489a7d5
refactor(ffmpeg): split media operations and safely publish outputs
2026-10-05 03:28:26 +07:00
zarzet
e77996ddbd
refactor(metadata): separate editor state, autofill and artwork ownership
2026-10-05 03:28:14 +07:00
zarzet
3047d5974c
refactor(player): isolate routes, layouts and reactive controls
2026-10-05 03:27:46 +07:00
zarzet
c22577eb18
refactor(player): separate metadata state and lyrics rendering
2026-10-05 02:31:55 +07:00