Просмотр исходного кода

fix: defaultToRead 时打开特定书籍被忽略

当 intent 指定了具体路由(如从书架打开某本书)时,
defaultToRead 不应覆盖,只在 intent 为默认首页时才自动跳转最近阅读。
HapeLee 5 месяцев назад
Родитель
Сommit
408db6145f
1 измененных файлов с 6 добавлено и 2 удалено
  1. 6 2
      app/src/main/java/io/legado/app/ui/main/MainActivity.kt

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

@@ -192,8 +192,12 @@ open class MainActivity : BaseComposeActivity(), VariableDialog.Callback {
         }
 
         val startRoutes = remember {
-            if (OtherConfig.defaultToRead) arrayOf(MainRouteHome, MainRouteReadBook())
-            else arrayOf(MainNavigator.resolveStartRoute(intent))
+            val resolved = MainNavigator.resolveStartRoute(intent)
+            if (OtherConfig.defaultToRead && resolved == MainRouteHome) {
+                arrayOf(MainRouteHome, MainRouteReadBook())
+            } else {
+                arrayOf(resolved)
+            }
         }
         val backStack = rememberNavBackStack(*startRoutes)