From 73258e9e05e20b00fd2dedb02f32f67342629df9 Mon Sep 17 00:00:00 2001 From: AntsyLich <59261191+AntsyLich@users.noreply.github.com> Date: Wed, 25 Feb 2026 17:04:24 +0600 Subject: [PATCH] Fix migration's selected sources order not preserved (#2993) (cherry picked from commit 47816d4b218e6a62ef9fcd3097b6b0b8f2f95b17) # Conflicts: # CHANGELOG.md --- .../feature/migration/config/MigrationConfigScreen.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/mihon/feature/migration/config/MigrationConfigScreen.kt b/app/src/main/java/mihon/feature/migration/config/MigrationConfigScreen.kt index ce1280276..00a1b8cd5 100644 --- a/app/src/main/java/mihon/feature/migration/config/MigrationConfigScreen.kt +++ b/app/src/main/java/mihon/feature/migration/config/MigrationConfigScreen.kt @@ -331,13 +331,13 @@ class MigrationConfigScreen(private val mangaIds: Collection) : Screen() { } } - private fun updateSources(save: Boolean = true, action: (List) -> List) { + private fun updateSources(action: (List) -> List) { mutableState.update { state -> val updatedSources = action(state.sources) val includedSources = updatedSources.mapNotNull { if (!it.isSelected) null else it.id } state.copy(sources = updatedSources.sortedWith(sourcesComparator(includedSources))) } - if (save) saveSources() + saveSources() } private fun initSources() { @@ -370,7 +370,9 @@ class MigrationConfigScreen(private val mangaIds: Collection) : Screen() { } .toList() - updateSources(save = false) { sources } + mutableState.update { state -> + state.copy(sources = sources.sortedWith(sourcesComparator(includedSources))) + } } fun toggleSelection(id: Long) {