mirror of
https://github.com/KRTirtho/spotube.git
synced 2026-11-04 10:13:59 +00:00
TrackList rendered every loaded track inside one LazyColumn item, so all rows stayed composed and recomposed together; scrolling ~1350 saved tracks exhausted the desktop heap (#3200). Rows are now separate lazy items and the card is drawn once behind them. Only the current row depends on the playing state, the saved tracks screen no longer reloads from page 1 whenever a page arrives, cached tracks are streamed in 64 KB chunks instead of read whole, and queue loading/restoring maps entries in one pass instead of quadratically. Desktop kept full-size embedded covers for local files and serialized them as JSON number arrays into the local media index and the queue, which is persisted on every change (#3193). Covers are now shrunk to 160 px like on Android, the queue no longer persists them (restore fills them in from the index), and store files already bloated past 8 MB are dropped instead of loaded. Lists keyed on plugin ids crashed on blank or repeated ids (#3196); they now go through uniqueLazyKeys. Queue persistence failures are logged instead of crashing the app, a likely cause of #3198. Fixes #3200 Fixes #3193 Fixes #3196 |
||
|---|---|---|
| .. | ||
| graalvm | ||
| icons | ||
| src | ||
| build.gradle.kts | ||
| Cargo.lock | ||
| Cargo.toml | ||
| proguard-rules.pro | ||