Commit Graph
41 Commits
Author SHA1 Message Date
zarzet e01ec99c5e perf(downloads): enqueue selected playlists in one update 2026-10-08 09:27:26 +07:00
zarzet 2ded1cff68 perf(downloads): batch queue cancellation and progress cleanup 2026-10-08 08:47:47 +07:00
zarzet c67d2a2dd2 perf(downloads): batch cancellation resets for retry 2026-10-08 06:55:26 +07:00
zarzet e0bdcb5134 perf(collections): delete selected playlists in one transaction 2026-10-08 05:14:44 +07:00
zarzet 3da4126762 perf(downloads): enqueue Wishlist selections in one update 2026-10-08 05:08:24 +07:00
zarzet 8ffd232b35 perf(collections): remove selected tracks in one transaction 2026-10-08 04:58:47 +07:00
zarzet 105f1b0946 perf(network): prepare large SMB listings off the UI thread 2026-10-08 04:47:53 +07:00
zarzet 0af197b82a perf(library): buffer network scan output with bounded writes 2026-10-08 04:40:09 +07:00
zarzet 4076842b8f perf(lyrics): short-circuit content availability checks 2026-10-08 04:33:30 +07:00
zarzet 20e0573d09 perf(collections): batch Love All updates and persistence 2026-10-08 04:01:50 +07:00
zarzet 460f8ebc2d perf(collections): stage large playlist additions off the UI thread 2026-10-08 03:19:45 +07:00
zarzet 6325c4769c fix(downloads): preserve actual provider audio format 2026-10-08 01:50:36 +07:00
zarzet dc1e7c1273 fix(lyrics): treat placeholder zero timestamps as unsynced 2026-10-08 00:49:42 +07:00
zarzet d89048409f fix(library): retry transient SQLite locks before scan transactions 2026-10-07 18:46:05 +07:00
zarzet 6cf2195563 test(native): verify private data routes through app channels 2026-10-07 04:31:52 +07:00
zarzet 8ca9205cc4 fix(library): stage native scans before owner SQLite publication 2026-10-07 04:19:14 +07:00
zarzet d285f26f9a fix(cache): prune detached projections under source writer barrier 2026-10-07 04:19:14 +07:00
zarzet 100999e5f5 perf(library): load bounded browse pages without rereading prefixes 2026-10-07 04:19:14 +07:00
zarzet e7d0d88035 perf(backup): stream encoded collections without cloning model graphs 2026-10-07 04:19:14 +07:00
zarzet 1094ed72f5 perf(queue): bound SQLite transfers and move large codecs off UI 2026-10-07 04:19:14 +07:00
zarzet 4d0fe68f17 perf(collections): hydrate native snapshots on bounded workers 2026-10-07 04:19:14 +07:00
zarzet a0abf97168 fix(backup): publish native restores through owning SQLite connection 2026-10-07 04:18:29 +07:00
zarzet 8b2ba446e3 perf(cache): batch cover maintenance on Rust workers 2026-10-07 03:06:00 +07:00
zarzet a2fd9c542c perf(collections): restore backups on Rust SQLite workers 2026-10-07 03:03:44 +07:00
zarzet f16c9c725a perf(backup): stream ZIP archives on Rust workers 2026-10-07 02:33:27 +07:00
zarzet 76b843b2bf perf(mornye): prepare overlay GPU pipeline before first opening 2026-10-07 01:54:22 +07:00
zarzet 1c9c901528 perf(mornye): compose overlay glass into one backdrop pass 2026-10-07 01:13:49 +07:00
zarzet b33824e267 perf(mornye): streamline download source and quality picker 2026-10-07 00:17:40 +07:00
zarzet d9fd21e16c test(native): verify data workers through Android and iOS channels
Cover exact palettes, audio analysis, lyrics, metadata, artwork, listings, playlists, file hashes, ID3, cancellation, and library/backup SQLite interoperability through the real app bridge.

The resulting source tree passed 300 Rust tests, 2012 Flutter tests, 6 Kotlin ABI tests, and 9 actual-channel integration tests on each Android and iOS simulator, with clean analysis and Clippy.
2026-10-06 23:30:00 +07:00
zarzet 90165d471c test(providers): keep notifier fixture counters private 2026-10-06 21:59:18 +07:00
zarzet bbc2c96971 fix(glass): refract navbar icons through the held lens 2026-10-05 23:20:51 +07:00
zarzet 224961d68d fix(glass): swell navbar glass without resizing icons 2026-10-05 22:29:46 +07:00
zarzet a56f206c43 test(glass): capture native Mornye poses and layer counts 2026-10-05 20:33:49 +07:00
zarzet fec2f86cfc test(performance): benchmark Mornye on iOS and Android emulators 2026-10-05 19:41:47 +07:00
zarzet 5c6a0390c2 fix(automix): diagnose crossfade fallback reasons 2026-10-04 04:51:32 +07:00
zarzet 0ec8c96269 feat(automix): add configurable duration and transition effects 2026-10-04 03:55:24 +07:00
zarzet 82068263f2 fix(mornye): match tab highlights to the expanding glass outline 2026-10-03 16:59:29 +07:00
zarzet 04ee6bc6f2 fix(lyrics): grant scoped access to selected audio files
Open temporary media directory grants for reading, embedding and exporting lyrics on iOS and Android. Resolve native file aliases consistently while retaining extension storage restrictions.

Validate with 4 iOS integration tests, 42 Flutter tests, 6 Rust file capability tests, and Android Kotlin compilation. Refs #631.
2026-10-03 12:19:03 +07:00
zarzet 84cac92983 feat(network): add SMB and WebDAV libraries with streaming and uploads 2026-10-03 04:27:47 +07:00
zarzet 0914e7d978 feat(mornye): restore liquid glass with continuous draggable navigation 2026-10-03 04:24:54 +07:00
zarzet 0b2cf0e4e5 feat(discord): add opt-in mobile rich presence with track artwork 2026-10-03 02:14:11 +07:00