فهرست منبع

fix: 自动跳转最近阅读

HapeLee 5 ماه پیش
والد
کامیت
7bf9dfa09b
1فایلهای تغییر یافته به همراه7 افزوده شده و 6 حذف شده
  1. 7 6
      app/src/main/java/io/legado/app/ui/main/MainActivity.kt

+ 7 - 6
app/src/main/java/io/legado/app/ui/main/MainActivity.kt

@@ -20,6 +20,7 @@ import androidx.compose.animation.scaleOut
 import androidx.compose.animation.togetherWith
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.LaunchedEffect
+import androidx.compose.runtime.remember
 import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
 import androidx.lifecycle.lifecycleScope
 import androidx.navigation3.runtime.NavKey
@@ -43,12 +44,12 @@ import io.legado.app.ui.about.CrashLogsDialog
 import io.legado.app.ui.about.UpdateDialog
 import io.legado.app.ui.book.read.ReadBookInputHandler
 import io.legado.app.ui.book.read.page.entities.PageDirection
+import io.legado.app.ui.config.otherConfig.OtherConfig
 import io.legado.app.ui.config.themeConfig.ThemeConfig
 import io.legado.app.ui.welcome.WelcomeActivity
 import io.legado.app.ui.widget.dialog.TextDialog
 import io.legado.app.ui.widget.dialog.VariableDialog
 import io.legado.app.utils.LogUtils
-import io.legado.app.utils.getPrefBoolean
 import io.legado.app.utils.showDialogFragment
 import io.legado.app.utils.startActivity
 import kotlinx.coroutines.Dispatchers.IO
@@ -190,7 +191,11 @@ open class MainActivity : BaseComposeActivity(), VariableDialog.Callback {
             else -> false
         }
 
-        val backStack = rememberNavBackStack(MainNavigator.resolveStartRoute(intent))
+        val startRoute = remember {
+            if (OtherConfig.defaultToRead) MainRouteReadBook()
+            else MainNavigator.resolveStartRoute(intent)
+        }
+        val backStack = rememberNavBackStack(startRoute)
 
         LaunchedEffect(backStack) {
             routeEvents.collect { route ->
@@ -273,10 +278,6 @@ open class MainActivity : BaseComposeActivity(), VariableDialog.Callback {
                 finish()
                 true
             }
-            getPrefBoolean(PreferKey.defaultToRead) -> {
-                setIntent(createReadBookIntent(this))
-                false
-            }
             else -> false
         }
     }