diff --git a/app/src/main/java/io/legado/app/ui/login/SourceLoginDialog.kt b/app/src/main/java/io/legado/app/ui/login/SourceLoginDialog.kt index 4a956a4dd..7ba9f279d 100644 --- a/app/src/main/java/io/legado/app/ui/login/SourceLoginDialog.kt +++ b/app/src/main/java/io/legado/app/ui/login/SourceLoginDialog.kt @@ -67,6 +67,15 @@ class SourceLoginDialog : BaseDialogFragment(R.layout.dialog_login, true) { it.root.onClick { if (rowUi.action.isAbsUrl()) { context?.openUrl(rowUi.action!!) + } else { + // JavaScript + rowUi.action?.let { + kotlin.runCatching { + source.evalJS(it) + }.onFailure { + AppLog.put("LoginUI Button ${rowUi.name} JavaScript error", it) + } + } } } } @@ -133,4 +142,4 @@ class SourceLoginDialog : BaseDialogFragment(R.layout.dialog_login, true) { activity?.finish() } -} \ No newline at end of file +}