mirror of
https://github.com/FluxaMedia/fluxa.git
synced 2026-08-06 08:48:51 +00:00
Diagnosed via logcat: MainActivity's own profile-driven loadInitialData and the shared shell's eager CatalogAction.Refresh both fired on cold start, running the same ~5s home bootstrap fetch twice back-to-back. AndroidCatalogHomeDataSource.refresh() now skips if categories are already loaded or a load is already in flight, since MainActivity's existing effect is the real trigger. Discover filters previously left catalogKey unset until the user picked one manually, meaning results loaded with no catalog selected and less specific data. Now auto-selects the first catalog option once it loads, matching native's behavior. Filter picker UX: swapped Material3's DropdownMenu (rendered as a tall default-sized popup) for a ModalBottomSheet, matching native's actual mobile picker pattern (full-width sheet, checkmark on selection). Replaced every text-glyph "icon" (⌕, ⌄, ‹, ›, ✓) with real vector icons. Added compose.materialIconsExtended (Compose Multiplatform's own KMP-compatible icon library) to the shared kmp-compose convention plugin so :shared can use Icons.Filled.* directly. |
||
|---|---|---|
| .. | ||
| src | ||
| build.gradle.kts | ||