Horis 1 жил өмнө
parent
commit
2799320279

+ 1 - 6
app/src/main/assets/web/help/md/replaceRuleHelp.md

@@ -3,9 +3,4 @@
 * 替换规则是用来替换正文内容的一种规则
 * 替换规则是用来替换正文内容的一种规则
   * 菜单可以新建和导入规则
   * 菜单可以新建和导入规则
   * 可以拖动排序
   * 可以拖动排序
-  * 可以选择操作
-* 替换规则右上角标志
-  * 绿点表示本书启用且生效的作用于正文规则
-  * 红点表示本书启用的作用于正文规则
-  * 没有标志表示本书不启用的作用于正文规则
-  * 本书没有启用替换净化、不是从阅读界面打开的替换净化不显示标志
+  * 可以选择操作

+ 1 - 5
app/src/main/java/io/legado/app/ui/book/read/ReadBookActivity.kt

@@ -1165,11 +1165,7 @@ class ReadBookActivity : BaseReadBookActivity(),
      * 替换
      * 替换
      */
      */
     override fun openReplaceRule() {
     override fun openReplaceRule() {
-        val intent = Intent(this, ReplaceRuleActivity::class.java).apply {
-            val showApplied = ReadBook.book?.getUseReplaceRule() == true
-            putExtra("showApplied", showApplied)
-        }
-        replaceActivity.launch(intent)
+        replaceActivity.launch(Intent(this, ReplaceRuleActivity::class.java))
     }
     }
 
 
     /**
     /**

+ 3 - 16
app/src/main/java/io/legado/app/ui/replace/ReplaceRuleActivity.kt

@@ -1,6 +1,7 @@
 package io.legado.app.ui.replace
 package io.legado.app.ui.replace
 
 
 import android.annotation.SuppressLint
 import android.annotation.SuppressLint
+import android.app.Activity
 import android.os.Bundle
 import android.os.Bundle
 import android.view.Menu
 import android.view.Menu
 import android.view.MenuItem
 import android.view.MenuItem
@@ -121,10 +122,8 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
         initRecyclerView()
         initRecyclerView()
         initSearchView()
         initSearchView()
         initSelectActionView()
         initSelectActionView()
+        observeReplaceRuleData()
         observeGroupData()
         observeGroupData()
-        viewModel.initData(intent) {
-            observeReplaceRuleData()
-        }
     }
     }
 
 
     override fun dispatchTouchEvent(ev: MotionEvent): Boolean {
     override fun dispatchTouchEvent(ev: MotionEvent): Boolean {
@@ -216,7 +215,6 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
                     val key = searchKey.substringAfter("group:")
                     val key = searchKey.substringAfter("group:")
                     appDb.replaceRuleDao.flowGroupSearch("%$key%")
                     appDb.replaceRuleDao.flowGroupSearch("%$key%")
                 }
                 }
-
                 else -> {
                 else -> {
                     appDb.replaceRuleDao.flowSearch("%$searchKey%")
                     appDb.replaceRuleDao.flowSearch("%$searchKey%")
                 }
                 }
@@ -224,7 +222,7 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
                 AppLog.put("替换规则管理界面更新数据出错", it)
                 AppLog.put("替换规则管理界面更新数据出错", it)
             }.flowOn(IO).conflate().collect {
             }.flowOn(IO).conflate().collect {
                 if (dataInit) {
                 if (dataInit) {
-                    setResult(RESULT_OK)
+                    setResult(Activity.RESULT_OK)
                 }
                 }
                 adapter.setItems(it, adapter.diffItemCallBack)
                 adapter.setItems(it, adapter.diffItemCallBack)
                 dataInit = true
                 dataInit = true
@@ -247,7 +245,6 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
         when (item.itemId) {
         when (item.itemId) {
             R.id.menu_add_replace_rule ->
             R.id.menu_add_replace_rule ->
                 editActivity.launch(ReplaceEditActivity.startIntent(this))
                 editActivity.launch(ReplaceEditActivity.startIntent(this))
-
             R.id.menu_group_manage -> showDialogFragment<GroupManageDialog>()
             R.id.menu_group_manage -> showDialogFragment<GroupManageDialog>()
             R.id.menu_del_selection -> viewModel.delSelection(adapter.selection)
             R.id.menu_del_selection -> viewModel.delSelection(adapter.selection)
             R.id.menu_import_onLine -> showImportDialog()
             R.id.menu_import_onLine -> showImportDialog()
@@ -255,13 +252,11 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
                 mode = HandleFileContract.FILE
                 mode = HandleFileContract.FILE
                 allowExtensions = arrayOf("txt", "json")
                 allowExtensions = arrayOf("txt", "json")
             }
             }
-
             R.id.menu_import_qr -> qrCodeResult.launch()
             R.id.menu_import_qr -> qrCodeResult.launch()
             R.id.menu_help -> showHelp("replaceRuleHelp")
             R.id.menu_help -> showHelp("replaceRuleHelp")
             R.id.menu_group_null -> {
             R.id.menu_group_null -> {
                 searchView.setQuery(getString(R.string.no_group), true)
                 searchView.setQuery(getString(R.string.no_group), true)
             }
             }
-
             else -> if (item.groupId == R.id.replace_group) {
             else -> if (item.groupId == R.id.replace_group) {
                 searchView.setQuery("group:${item.title}", true)
                 searchView.setQuery("group:${item.title}", true)
             }
             }
@@ -348,14 +343,6 @@ class ReplaceRuleActivity : VMBaseActivity<ActivityReplaceRuleBinding, ReplaceRu
         )
         )
     }
     }
 
 
-    override fun isEnabledForBook(rule: ReplaceRule): Boolean {
-        return viewModel.isEnabledForBook(rule)
-    }
-
-    override fun isAppliedForBook(rule: ReplaceRule): Boolean {
-        return viewModel.isAppliedForBook(rule)
-    }
-
     override fun update(vararg rule: ReplaceRule) {
     override fun update(vararg rule: ReplaceRule) {
         setResult(RESULT_OK)
         setResult(RESULT_OK)
         viewModel.update(*rule)
         viewModel.update(*rule)

+ 0 - 24
app/src/main/java/io/legado/app/ui/replace/ReplaceRuleAdapter.kt

@@ -1,11 +1,9 @@
 package io.legado.app.ui.replace
 package io.legado.app.ui.replace
 
 
 import android.content.Context
 import android.content.Context
-import android.graphics.Color
 import android.os.Bundle
 import android.os.Bundle
 import android.view.View
 import android.view.View
 import android.view.ViewGroup
 import android.view.ViewGroup
-import android.widget.ImageView
 import android.widget.PopupMenu
 import android.widget.PopupMenu
 import androidx.core.os.bundleOf
 import androidx.core.os.bundleOf
 import androidx.recyclerview.widget.DiffUtil
 import androidx.recyclerview.widget.DiffUtil
@@ -19,8 +17,6 @@ import io.legado.app.lib.theme.backgroundColor
 import io.legado.app.ui.widget.recycler.DragSelectTouchHelper
 import io.legado.app.ui.widget.recycler.DragSelectTouchHelper
 import io.legado.app.ui.widget.recycler.ItemTouchCallback
 import io.legado.app.ui.widget.recycler.ItemTouchCallback
 import io.legado.app.utils.ColorUtils
 import io.legado.app.utils.ColorUtils
-import io.legado.app.utils.invisible
-import io.legado.app.utils.visible
 
 
 
 
 class ReplaceRuleAdapter(context: Context, var callBack: CallBack) :
 class ReplaceRuleAdapter(context: Context, var callBack: CallBack) :
@@ -124,7 +120,6 @@ class ReplaceRuleAdapter(context: Context, var callBack: CallBack) :
                     }
                     }
                 }
                 }
             }
             }
-            upShowApplied(ivApplied, item)
         }
         }
     }
     }
 
 
@@ -177,23 +172,6 @@ class ReplaceRuleAdapter(context: Context, var callBack: CallBack) :
         popupMenu.show()
         popupMenu.show()
     }
     }
 
 
-
-    private fun upShowApplied(iv: ImageView, rule: ReplaceRule) {
-        val isEnabledForBook = callBack.isEnabledForBook(rule)
-        val isAppliedForBook = callBack.isAppliedForBook(rule)
-        if (!isEnabledForBook && !isAppliedForBook) {
-            iv.invisible()
-        } else {
-            iv.visible()
-        }
-        if (isEnabledForBook) {
-            iv.setColorFilter(Color.RED)
-        }
-        if (isAppliedForBook) {
-            iv.setColorFilter(Color.GREEN)
-        }
-    }
-
     override fun swap(srcPosition: Int, targetPosition: Int): Boolean {
     override fun swap(srcPosition: Int, targetPosition: Int): Boolean {
         val srcItem = getItem(srcPosition)
         val srcItem = getItem(srcPosition)
         val targetItem = getItem(targetPosition)
         val targetItem = getItem(targetPosition)
@@ -254,7 +232,5 @@ class ReplaceRuleAdapter(context: Context, var callBack: CallBack) :
         fun toBottom(rule: ReplaceRule)
         fun toBottom(rule: ReplaceRule)
         fun upOrder()
         fun upOrder()
         fun upCountView()
         fun upCountView()
-        fun isEnabledForBook(rule: ReplaceRule): Boolean
-        fun isAppliedForBook(rule: ReplaceRule): Boolean
     }
     }
 }
 }

+ 0 - 31
app/src/main/java/io/legado/app/ui/replace/ReplaceRuleViewModel.kt

@@ -1,13 +1,10 @@
 package io.legado.app.ui.replace
 package io.legado.app.ui.replace
 
 
 import android.app.Application
 import android.app.Application
-import android.content.Intent
 import android.text.TextUtils
 import android.text.TextUtils
 import io.legado.app.base.BaseViewModel
 import io.legado.app.base.BaseViewModel
 import io.legado.app.data.appDb
 import io.legado.app.data.appDb
 import io.legado.app.data.entities.ReplaceRule
 import io.legado.app.data.entities.ReplaceRule
-import io.legado.app.help.book.ContentProcessor
-import io.legado.app.model.ReadBook
 import io.legado.app.utils.splitNotBlank
 import io.legado.app.utils.splitNotBlank
 
 
 /**
 /**
@@ -16,34 +13,6 @@ import io.legado.app.utils.splitNotBlank
  */
  */
 class ReplaceRuleViewModel(application: Application) : BaseViewModel(application) {
 class ReplaceRuleViewModel(application: Application) : BaseViewModel(application) {
 
 
-    var showApplied = false
-    var enabledForBookRules = emptySet<ReplaceRule>()
-    var appliedForBookRules = emptySet<ReplaceRule>()
-
-    fun initData(intent: Intent, block: () -> Unit) {
-        execute {
-            showApplied = intent.getBooleanExtra("showApplied", false)
-            if (showApplied) {
-                val book = ReadBook.book ?: return@execute
-                val textChapter = ReadBook.curTextChapter ?: return@execute
-                enabledForBookRules = ContentProcessor.get(book).getContentReplaceRules().toSet()
-                textChapter.effectiveReplaceRules?.let {
-                    appliedForBookRules = it.toSet()
-                }
-            }
-        }.onFinally {
-            block.invoke()
-        }
-    }
-
-    fun isEnabledForBook(rule: ReplaceRule): Boolean {
-        return showApplied && enabledForBookRules.contains(rule)
-    }
-
-    fun isAppliedForBook(rule: ReplaceRule): Boolean {
-        return showApplied && appliedForBookRules.contains(rule)
-    }
-
     fun update(vararg rule: ReplaceRule) {
     fun update(vararg rule: ReplaceRule) {
         execute {
         execute {
             appDb.replaceRuleDao.update(*rule)
             appDb.replaceRuleDao.update(*rule)

+ 0 - 12
app/src/main/res/layout/item_replace_rule.xml

@@ -62,16 +62,4 @@
         app:layout_constraintTop_toTopOf="parent"
         app:layout_constraintTop_toTopOf="parent"
         tools:ignore="RtlHardcoded" />
         tools:ignore="RtlHardcoded" />
 
 
-    <io.legado.app.ui.widget.image.CircleImageView
-        android:id="@+id/iv_applied"
-        android:layout_width="8dp"
-        android:layout_height="8dp"
-        android:scaleType="centerCrop"
-        android:scrollbars="none"
-        android:src="@color/md_green_600"
-        android:visibility="invisible"
-        app:layout_constraintRight_toRightOf="@id/iv_menu_more"
-        app:layout_constraintTop_toTopOf="@id/iv_menu_more"
-        tools:visibility="visible" />
-
 </androidx.constraintlayout.widget.ConstraintLayout>
 </androidx.constraintlayout.widget.ConstraintLayout>