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

目录界面菜单添加替换开关,开启替换加载时间会长一些

kunfei 4 лет назад
Родитель
Сommit
c3b81d9b88

+ 1 - 0
app/src/main/assets/updateLog.md

@@ -14,6 +14,7 @@
 **2022/02/10**
 
 * 可以单独给书籍设置朗读tts
+* 目录界面菜单添加替换开关,开启替换加载时间会长一些
 
 **2022/02/09**
 

+ 1 - 0
app/src/main/java/io/legado/app/constant/PreferKey.kt

@@ -93,6 +93,7 @@ object PreferKey {
     const val defaultBookTreeUri = "defaultBookTreeUri"
     const val checkSource = "checkSource"
     const val uploadRule = "uploadRule"
+    const val tocUiUseReplace = "tocUiUseReplace"
 
     const val cPrimary = "colorPrimary"
     const val cAccent = "colorAccent"

+ 6 - 0
app/src/main/java/io/legado/app/help/AppConfig.kt

@@ -250,6 +250,12 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
             appCtx.putPrefInt(PreferKey.webPort, value)
         }
 
+    var tocUiUseReplace: Boolean
+        get() = appCtx.getPrefBoolean(PreferKey.tocUiUseReplace)
+        set(value) {
+            appCtx.putPrefBoolean(PreferKey.tocUiUseReplace, value)
+        }
+
     val autoChangeSource: Boolean
         get() = appCtx.getPrefBoolean(PreferKey.autoChangeSource, true)
 

+ 3 - 1
app/src/main/java/io/legado/app/ui/book/toc/ChapterListFragment.kt

@@ -13,6 +13,7 @@ import io.legado.app.data.appDb
 import io.legado.app.data.entities.Book
 import io.legado.app.data.entities.BookChapter
 import io.legado.app.databinding.FragmentChapterListBinding
+import io.legado.app.help.AppConfig
 import io.legado.app.help.BookHelp
 import io.legado.app.help.ContentProcessor
 import io.legado.app.lib.theme.bottomBackground
@@ -115,7 +116,8 @@ class ChapterListFragment : VMBaseFragment<TocViewModel>(R.layout.fragment_chapt
                         val replaces = viewModel.bookData.value?.let { book ->
                             ContentProcessor.get(book.name, book.origin).getReplaceRules()
                         }
-                        val useReplace = viewModel.bookData.value?.getUseReplaceRule() == true
+                        val useReplace =
+                            AppConfig.tocUiUseReplace && viewModel.bookData.value?.getUseReplaceRule() == true
                         it.map { chapter ->
                             Pair(
                                 chapter,

+ 7 - 0
app/src/main/java/io/legado/app/ui/book/toc/TocActivity.kt

@@ -15,6 +15,7 @@ import com.google.android.material.tabs.TabLayout
 import io.legado.app.R
 import io.legado.app.base.VMBaseActivity
 import io.legado.app.databinding.ActivityChapterListBinding
+import io.legado.app.help.AppConfig
 import io.legado.app.lib.theme.accentColor
 import io.legado.app.lib.theme.primaryTextColor
 import io.legado.app.ui.about.AppLogDialog
@@ -74,6 +75,11 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() {
         return super.onCompatCreateOptionsMenu(menu)
     }
 
+    override fun onMenuOpened(featureId: Int, menu: Menu): Boolean {
+        menu.findItem(R.id.menu_use_replace)?.isChecked = AppConfig.tocUiUseReplace
+        return super.onMenuOpened(featureId, menu)
+    }
+
     override fun onCompatOptionsItemSelected(item: MenuItem): Boolean {
         when (item.itemId) {
             R.id.menu_reverse_toc -> viewModel.reverseToc {
@@ -82,6 +88,7 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() {
                     putExtra("chapterPos", it.durChapterPos)
                 })
             }
+            R.id.menu_use_replace -> AppConfig.tocUiUseReplace = !item.isChecked
             R.id.menu_log -> showDialogFragment<AppLogDialog>()
         }
         return super.onCompatOptionsItemSelected(item)

+ 8 - 2
app/src/main/res/menu/book_toc.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:tools="http://schemas.android.com/tools"
-    xmlns:android="http://schemas.android.com/apk/res/android"
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
     tools:ignore="AlwaysShowAction">
 
     <item
@@ -15,6 +15,12 @@
         android:title="@string/reverse_toc"
         app:showAsAction="never" />
 
+    <item
+        android:id="@+id/menu_use_replace"
+        android:checkable="true"
+        android:title="@string/use_replace"
+        app:showAsAction="never" />
+
     <item
         android:id="@+id/menu_log"
         android:title="@string/log"

+ 1 - 0
app/src/main/res/values-es-rES/strings.xml

@@ -929,5 +929,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 1 - 0
app/src/main/res/values-ja-rJP/strings.xml

@@ -932,5 +932,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 1 - 0
app/src/main/res/values-pt-rBR/strings.xml

@@ -932,5 +932,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 1 - 0
app/src/main/res/values-zh-rHK/strings.xml

@@ -929,5 +929,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 1 - 0
app/src/main/res/values-zh-rTW/strings.xml

@@ -931,5 +931,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 1 - 0
app/src/main/res/values-zh/strings.xml

@@ -931,5 +931,6 @@
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">子文件夹</string>
     <string name="general">全局</string>
+    <string name="use_replace">使用替换</string>
     <!-- string end -->
 </resources>

+ 4 - 3
app/src/main/res/values/strings.xml

@@ -918,8 +918,8 @@
     <string name="book_tree_uri_t">书籍保存位置</string>
     <string name="book_tree_uri_s">从其它应用打开的书籍保存位置</string>
     <string name="select_book_folder">选择保存书籍的文件夹</string>
-    <string name="user_agent">用户代理</string>
-    <string name="bg_alpha">背景透明度</string>
+    <string name="user_agent">User agent</string>
+    <string name="bg_alpha">Background alpha</string>
 
     <!-- check source config string -->
     <string name="check_source_config">校验设置</string>
@@ -931,6 +931,7 @@
     <string name="check_source_config_summary">校验超时: %1$s秒\n校验项目:%2$s</string>
     <string name="record_debug_log">记录调试日志</string>
     <string name="sub_dir">Sub dir</string>
-    <string name="general">全局</string>
+    <string name="general">General</string>
+    <string name="use_replace">Use replace</string>
     <!-- string end -->
 </resources>