diff --git a/app/src/main/java/io/legado/app/ui/dict/DictViewModel.kt b/app/src/main/java/io/legado/app/ui/dict/DictViewModel.kt index 10e02c34c..f8c56d3aa 100644 --- a/app/src/main/java/io/legado/app/ui/dict/DictViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/dict/DictViewModel.kt @@ -2,8 +2,8 @@ package io.legado.app.ui.dict import android.app.Application import io.legado.app.base.BaseViewModel +import io.legado.app.data.appDb import io.legado.app.data.entities.DictRule -import io.legado.app.help.DefaultData import io.legado.app.help.coroutine.Coroutine class DictViewModel(application: Application) : BaseViewModel(application) { @@ -12,7 +12,7 @@ class DictViewModel(application: Application) : BaseViewModel(application) { fun initData(onSuccess: (List) -> Unit) { execute { - DefaultData.dictRules + appDb.dictRuleDao.enabled }.onSuccess { onSuccess.invoke(it) } diff --git a/app/src/main/java/io/legado/app/ui/dict/rule/DictRuleEditDialog.kt b/app/src/main/java/io/legado/app/ui/dict/rule/DictRuleEditDialog.kt index e2a68e231..2225ab6ac 100644 --- a/app/src/main/java/io/legado/app/ui/dict/rule/DictRuleEditDialog.kt +++ b/app/src/main/java/io/legado/app/ui/dict/rule/DictRuleEditDialog.kt @@ -15,8 +15,7 @@ import io.legado.app.data.appDb import io.legado.app.data.entities.DictRule import io.legado.app.databinding.DialogDictRuleEditBinding import io.legado.app.lib.theme.primaryColor -import io.legado.app.utils.applyTint -import io.legado.app.utils.setLayout +import io.legado.app.utils.* import io.legado.app.utils.viewbindingdelegate.viewBinding class DictRuleEditDialog() : BaseDialogFragment(R.layout.dialog_dict_rule_edit, true), @@ -100,11 +99,22 @@ class DictRuleEditDialog() : BaseDialogFragment(R.layout.dialog_dict_rule_edit, } fun copyRule(dictRule: DictRule) { - + context.sendToClip(GSON.toJson(dictRule)) } fun pasteRule(success: (DictRule) -> Unit) { - + val text = context.getClipText() + if (text.isNullOrBlank()) { + context.toastOnUi("剪贴板没有内容") + return + } + execute { + GSON.fromJsonObject(text).getOrThrow()!! + }.onSuccess { + success.invoke(it) + }.onError { + context.toastOnUi("格式不对") + } } } diff --git a/app/src/main/res/menu/dict_rule_edit.xml b/app/src/main/res/menu/dict_rule_edit.xml index fe00fb6a6..9f25c7093 100644 --- a/app/src/main/res/menu/dict_rule_edit.xml +++ b/app/src/main/res/menu/dict_rule_edit.xml @@ -20,9 +20,4 @@ android:title="@string/paste_rule" app:showAsAction="never" /> - -