From 420e50ec87efe34b10ce2739a458d05f02e6dea5 Mon Sep 17 00:00:00 2001 From: kunfei Date: Fri, 11 Nov 2022 22:49:49 +0800 Subject: [PATCH] =?UTF-8?q?rss=20webView=E6=B7=BB=E5=8A=A0=E6=B3=A8?= =?UTF-8?q?=E5=85=A5js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/ui/rss/read/ReadRssActivity.kt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/rss/read/ReadRssActivity.kt b/app/src/main/java/io/legado/app/ui/rss/read/ReadRssActivity.kt index 604f449e3..4e72e0f93 100644 --- a/app/src/main/java/io/legado/app/ui/rss/read/ReadRssActivity.kt +++ b/app/src/main/java/io/legado/app/ui/rss/read/ReadRssActivity.kt @@ -308,8 +308,9 @@ class ReadRssActivity : VMBaseActivity } inner class CustomWebViewClient : WebViewClient() { + override fun shouldOverrideUrlLoading( - view: WebView?, + view: WebView, request: WebResourceRequest? ): Boolean { request?.let { @@ -319,22 +320,27 @@ class ReadRssActivity : VMBaseActivity } @Suppress("DEPRECATION", "OVERRIDE_DEPRECATION", "KotlinRedundantDiagnosticSuppress") - override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean { + override fun shouldOverrideUrlLoading(view: WebView, url: String?): Boolean { url?.let { return shouldOverrideUrlLoading(Uri.parse(it)) } return true } - override fun onPageFinished(view: WebView?, url: String?) { + override fun onPageFinished(view: WebView, url: String?) { super.onPageFinished(view, url) - view?.title?.let { title -> + view.title?.let { title -> if (title != url && title != view.url && title.isNotBlank() && url != "about:blank") { binding.titleBar.title = title } else { binding.titleBar.title = intent.getStringExtra("title") } } + viewModel.rssSource?.injectJs?.let { + if (it.isNotBlank()) { + view.evaluateJavascript(it, null) + } + } } private fun shouldOverrideUrlLoading(url: Uri): Boolean {