diff --git a/app/build.gradle.kts b/app/build.gradle.kts index cf32210a0..9400f9901 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -25,8 +25,8 @@ android { defaultConfig { applicationId = "app.komikku" - versionCode = 76 - versionName = "1.13.4" + versionCode = 77 + versionName = "1.13.5" buildConfigField("String", "COMMIT_COUNT", "\"${getCommitCount()}\"") buildConfigField("String", "COMMIT_SHA", "\"${getGitSha()}\"") diff --git a/app/src/main/java/mihon/core/migration/migrations/MergedMangaDedupeModeMigration.kt b/app/src/main/java/mihon/core/migration/migrations/MergedMangaDedupeModeMigration.kt new file mode 100644 index 000000000..71e817db2 --- /dev/null +++ b/app/src/main/java/mihon/core/migration/migrations/MergedMangaDedupeModeMigration.kt @@ -0,0 +1,35 @@ +package mihon.core.migration.migrations + +import mihon.core.migration.Migration +import mihon.core.migration.MigrationContext +import tachiyomi.core.common.util.lang.withIOContext +import tachiyomi.data.DatabaseHandler +import tachiyomi.data.manga.MergedMangaMapper +import tachiyomi.domain.manga.interactor.UpdateMergedSettings +import tachiyomi.domain.manga.model.MergeMangaSettingsUpdate + +class MergedMangaDedupeModeMigration : Migration { + override val version: Float = 77f + + override suspend fun invoke(migrationContext: MigrationContext): Boolean = withIOContext { + val handler = migrationContext.get() ?: return@withIOContext false + val updateMergedSettings = migrationContext.get() ?: return@withIOContext false + + // Get merged manga references from db + val dbMergedMangaReferences = handler.awaitList { + mergedQueries.selectAll(MergedMangaMapper::map) + } + + dbMergedMangaReferences.map { + MergeMangaSettingsUpdate( + id = it.id, + chapterSortMode = (it.chapterSortMode - 1).coerceAtLeast(0), + isInfoManga = null, + getChapterUpdates = null, + chapterPriority = null, + downloadChapters = null, + ) + }.let { updateMergedSettings.awaitAll(it) } + return@withIOContext true + } +} diff --git a/app/src/main/java/mihon/core/migration/migrations/Migrations.kt b/app/src/main/java/mihon/core/migration/migrations/Migrations.kt index 9dac12086..3726896cc 100644 --- a/app/src/main/java/mihon/core/migration/migrations/Migrations.kt +++ b/app/src/main/java/mihon/core/migration/migrations/Migrations.kt @@ -48,6 +48,7 @@ val migrations: List IntegratedHentaiMigration(), SetupAppUpdateMigration(), EHentaiMigration(), + MergedMangaDedupeModeMigration(), // KMK <-- TrustExtensionRepositoryMigration(), CategoryPreferencesCleanupMigration(),