diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1ea9952f1..e80153fc8 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -26,7 +26,7 @@ android { applicationId = "eu.kanade.tachiyomi.sy" minSdk = AndroidConfig.minSdk targetSdk = AndroidConfig.targetSdk - versionCode = 34 + versionCode = 35 versionName = "1.8.3" buildConfigField("String", "COMMIT_COUNT", "\"${getCommitCount()}\"") diff --git a/app/src/main/java/eu/kanade/tachiyomi/Migrations.kt b/app/src/main/java/eu/kanade/tachiyomi/Migrations.kt index c0eb74d70..8c3da001f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/Migrations.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/Migrations.kt @@ -206,11 +206,11 @@ object Migrations { val newSortingMode = when (oldSortingMode) { LibrarySort.ALPHA -> SortModeSetting.ALPHABETICAL LibrarySort.LAST_READ -> SortModeSetting.LAST_READ - LibrarySort.LAST_CHECKED -> SortModeSetting.LAST_MANGA_UPDATE - LibrarySort.UNREAD -> SortModeSetting.UNREAD_COUNT + LibrarySort.LAST_CHECKED -> SortModeSetting.LAST_CHECKED + LibrarySort.UNREAD -> SortModeSetting.UNREAD LibrarySort.TOTAL -> SortModeSetting.TOTAL_CHAPTERS LibrarySort.LATEST_CHAPTER -> SortModeSetting.LATEST_CHAPTER - LibrarySort.CHAPTER_FETCH_DATE -> SortModeSetting.CHAPTER_FETCH_DATE + LibrarySort.CHAPTER_FETCH_DATE -> SortModeSetting.DATE_FETCHED LibrarySort.DATE_ADDED -> SortModeSetting.DATE_ADDED else -> SortModeSetting.ALPHABETICAL } @@ -268,6 +268,17 @@ object Migrations { preferences.navigationModeWebtoon().set(5) } } + if (oldVersion < 81) { + // Handle renamed enum values + @Suppress("DEPRECATION") + val newSortingMode = when (val oldSortingMode = preferences.librarySortingMode().get()) { + SortModeSetting.LAST_CHECKED -> SortModeSetting.LAST_MANGA_UPDATE + SortModeSetting.UNREAD -> SortModeSetting.UNREAD_COUNT + SortModeSetting.DATE_FETCHED -> SortModeSetting.CHAPTER_FETCH_DATE + else -> oldSortingMode + } + preferences.librarySortingMode().set(newSortingMode) + } return true } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt index 0626ab00a..c44bb3820 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt @@ -433,6 +433,7 @@ class LibraryPresenter( manga1IndexOfTag.compareTo(manga2IndexOfTag) } // SY <-- + else -> throw IllegalStateException("Invalid SortModeSetting: $sortingMode") } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt index 2730df2f8..137577783 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt @@ -13,7 +13,17 @@ enum class SortModeSetting(val flag: Int) { CHAPTER_FETCH_DATE(0b00011000), DATE_ADDED(0b00011100), DRAG_AND_DROP(0b00100000), - TAG_LIST(0b00100100); + TAG_LIST(0b00100100), + + @Deprecated("Use LAST_MANGA_UPDATE") + LAST_CHECKED(0b00001000), + + @Deprecated("Use UNREAD_COUNT") + UNREAD(0b00001100), + + @Deprecated("Use CHAPTER_FETCH_DATE") + DATE_FETCHED(0b00011000), + ; companion object { // Mask supports for more sorting flags if necessary diff --git a/app/src/main/java/exh/EXHMigrations.kt b/app/src/main/java/exh/EXHMigrations.kt index 884b2efe2..7083204fa 100644 --- a/app/src/main/java/exh/EXHMigrations.kt +++ b/app/src/main/java/exh/EXHMigrations.kt @@ -444,6 +444,17 @@ object EXHMigrations { preferences.navigationModeWebtoon().set(5) } } + if (oldVersion under 35) { + // Handle renamed enum values + @Suppress("DEPRECATION") + val newSortingMode = when (val oldSortingMode = preferences.librarySortingMode().get()) { + SortModeSetting.LAST_CHECKED -> SortModeSetting.LAST_MANGA_UPDATE + SortModeSetting.UNREAD -> SortModeSetting.UNREAD_COUNT + SortModeSetting.DATE_FETCHED -> SortModeSetting.CHAPTER_FETCH_DATE + else -> oldSortingMode + } + preferences.librarySortingMode().set(newSortingMode) + } // if (oldVersion under 1) { } (1 is current release version) // do stuff here when releasing changed crap