Add migration config screen to select and prioritize target sources (#2144)

(cherry picked from commit 2e180005a01f633ad7fafc5cfb3079f0bc858448)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
This commit is contained in:
AntsyLich
2025-05-28 20:49:44 +05:45
committed by NGB-Was-Taken
parent e074df469e
commit 5156248a96
11 changed files with 492 additions and 85 deletions
@@ -24,6 +24,18 @@ interface PreferenceStore {
fun getAll(): Map<String, *>
}
fun PreferenceStore.getLongArray(
key: String,
defaultValue: List<Long>,
): Preference<List<Long>> {
return getObject(
key = key,
defaultValue = defaultValue,
serializer = { it.joinToString(",") },
deserializer = { it.split(",").mapNotNull { l -> l.toLongOrNull() } },
)
}
inline fun <reified T : Enum<T>> PreferenceStore.getEnum(
key: String,
defaultValue: T,