|
|
@@ -14,6 +14,8 @@ import io.legado.app.databinding.ActivityReplaceEditBinding
|
|
|
import io.legado.app.lib.dialogs.SelectItem
|
|
|
import io.legado.app.ui.widget.dialog.TextDialog
|
|
|
import io.legado.app.ui.widget.keyboard.KeyboardToolPop
|
|
|
+import io.legado.app.utils.GSON
|
|
|
+import io.legado.app.utils.sendToClip
|
|
|
import io.legado.app.utils.showDialogFragment
|
|
|
import io.legado.app.utils.toastOnUi
|
|
|
import io.legado.app.utils.viewbindingdelegate.viewBinding
|
|
|
@@ -68,16 +70,10 @@ class ReplaceEditActivity :
|
|
|
|
|
|
override fun onCompatOptionsItemSelected(item: MenuItem): Boolean {
|
|
|
when (item.itemId) {
|
|
|
- R.id.menu_save -> {
|
|
|
- val rule = getReplaceRule()
|
|
|
- if (!rule.isValid()) {
|
|
|
- toastOnUi(R.string.replace_rule_invalid)
|
|
|
- } else {
|
|
|
- viewModel.save(rule) {
|
|
|
- setResult(RESULT_OK)
|
|
|
- finish()
|
|
|
- }
|
|
|
- }
|
|
|
+ R.id.menu_save -> saveRule()
|
|
|
+ R.id.menu_copy_rule -> sendToClip(GSON.toJson(getReplaceRule()))
|
|
|
+ R.id.menu_paste_rule -> viewModel.pasteRule {
|
|
|
+ upReplaceView(it)
|
|
|
}
|
|
|
}
|
|
|
return true
|
|
|
@@ -114,6 +110,18 @@ class ReplaceEditActivity :
|
|
|
return replaceRule
|
|
|
}
|
|
|
|
|
|
+ private fun saveRule() {
|
|
|
+ val rule = getReplaceRule()
|
|
|
+ if (!rule.isValid()) {
|
|
|
+ toastOnUi(R.string.replace_rule_invalid)
|
|
|
+ } else {
|
|
|
+ viewModel.save(rule) {
|
|
|
+ setResult(RESULT_OK)
|
|
|
+ finish()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
override fun helpActions(): List<SelectItem<String>> {
|
|
|
return arrayListOf(
|
|
|
SelectItem("正则教程", "regexHelp")
|