From 62d7d0988642536d764fb6453335946f202e70f8 Mon Sep 17 00:00:00 2001 From: tarsin Date: Fri, 2 Jun 2023 15:03:34 +0800 Subject: [PATCH] Inline launchPageGalleryListSceneAction --- .../main/java/com/hippo/ehviewer/Settings.kt | 26 +------------------ .../com/hippo/ehviewer/ui/MainActivity.kt | 11 +++++++- 2 files changed, 11 insertions(+), 26 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/Settings.kt b/app/src/main/java/com/hippo/ehviewer/Settings.kt index 5a0592bc8..f3748010b 100755 --- a/app/src/main/java/com/hippo/ehviewer/Settings.kt +++ b/app/src/main/java/com/hippo/ehviewer/Settings.kt @@ -21,8 +21,6 @@ import android.util.Log import androidx.annotation.DimenRes import androidx.preference.PreferenceManager import com.hippo.ehviewer.client.data.FavListUrlBuilder -import com.hippo.ehviewer.ui.scene.GalleryListScene -import com.hippo.ehviewer.yorozuya.NumberUtils import com.hippo.unifile.UniFile import splitties.experimental.ExperimentalSplittiesApi import splitties.init.appCtx @@ -128,29 +126,6 @@ object Settings : DefaultPreferences() { sSettingsPre.edit().putString(key, value).apply() } - private fun getIntFromStr(key: String, defValue: Int): Int { - return try { - NumberUtils.parseIntSafely( - sSettingsPre.getString(key, defValue.toString()), - defValue, - ) - } catch (e: ClassCastException) { - Log.d(TAG, "Get ClassCastException when get $key value", e) - defValue - } - } - - val launchPageGalleryListSceneAction: String - get() { - return when (val value = getIntFromStr(KEY_LAUNCH_PAGE, DEFAULT_LAUNCH_PAGE)) { - 0 -> GalleryListScene.ACTION_HOMEPAGE - 1 -> GalleryListScene.ACTION_SUBSCRIPTION - 2 -> GalleryListScene.ACTION_WHATS_HOT - 3 -> GalleryListScene.ACTION_TOP_LIST - else -> throw IllegalStateException("Unexpected value: $value") - } - } - @get:DimenRes val detailSizeResId: Int get() = when (detailSize) { @@ -189,6 +164,7 @@ object Settings : DefaultPreferences() { val detailSize by intFromStrPref(KEY_DETAIL_SIZE, 0) val thumbResolution by intFromStrPref(KEY_THUMB_RESOLUTION, 0) val readCacheSize by intFromStrPref(KEY_READ_CACHE_SIZE, 640) + var launchPage by intFromStrPref(KEY_LAUNCH_PAGE, DEFAULT_LAUNCH_PAGE) val showComments by boolPref("show_gallery_comments", true) val requestNews by boolPref(KEY_REQUEST_NEWS, false) diff --git a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt index c26165413..498273ab8 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt @@ -52,6 +52,7 @@ import com.google.android.material.snackbar.Snackbar import com.hippo.ehviewer.AppConfig import com.hippo.ehviewer.R import com.hippo.ehviewer.Settings +import com.hippo.ehviewer.Settings.launchPage import com.hippo.ehviewer.client.EhUtils import com.hippo.ehviewer.client.data.ListUrlBuilder import com.hippo.ehviewer.client.parser.GalleryDetailUrlParser @@ -181,7 +182,15 @@ class MainActivity : EhActivity() { private fun setNavGraph() { navController.apply { graph = navInflater.inflate(R.navigation.nav_graph).apply { - when (Settings.launchPageGalleryListSceneAction) { + when ( + when (val value = launchPage) { + 0 -> GalleryListScene.ACTION_HOMEPAGE + 1 -> GalleryListScene.ACTION_SUBSCRIPTION + 2 -> GalleryListScene.ACTION_WHATS_HOT + 3 -> GalleryListScene.ACTION_TOP_LIST + else -> throw IllegalStateException("Unexpected value: $value") + } + ) { GalleryListScene.ACTION_HOMEPAGE -> setStartDestination(R.id.nav_homepage) GalleryListScene.ACTION_SUBSCRIPTION -> setStartDestination(R.id.nav_subscription) GalleryListScene.ACTION_WHATS_HOT -> setStartDestination(R.id.nav_whats_hot)