diff --git a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/documentation/DocumentationWebView.kt b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/documentation/DocumentationWebView.kt index 344b3d700..0c5c63903 100644 --- a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/documentation/DocumentationWebView.kt +++ b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/documentation/DocumentationWebView.kt @@ -6,6 +6,7 @@ import android.graphics.Bitmap import android.graphics.Color import android.net.Uri import android.view.ViewGroup.LayoutParams.MATCH_PARENT +import android.webkit.WebResourceError import android.webkit.WebResourceRequest import android.webkit.WebResourceResponse import android.webkit.WebSettings @@ -82,6 +83,13 @@ class DocumentationWebView(context: Context) : WebView(context) { onPageTitle(pageTitle.trim('"').takeUnless { it.isEmpty() || it == "null" || it == "Documentation" }) } } + + override fun onReceivedError(view: WebView, request: WebResourceRequest, error: WebResourceError) { + super.onReceivedError(view, request, error) + if (request.isForMainFrame) { + hideLoading() + } + } } with(settings) { diff --git a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/response/ResponseWebView.kt b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/response/ResponseWebView.kt index e77621efa..b4f6e5f3f 100644 --- a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/response/ResponseWebView.kt +++ b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/activities/response/ResponseWebView.kt @@ -3,6 +3,7 @@ package ch.rmy.android.http_shortcuts.activities.response import android.content.Context import android.net.Uri import android.util.AttributeSet +import android.webkit.WebResourceError import android.webkit.WebResourceRequest import android.webkit.WebResourceResponse import android.webkit.WebSettings @@ -125,6 +126,13 @@ class ResponseWebView @JvmOverloads constructor( override fun onPageFinished(view: WebView?, url: String?) { onLoaded() } + + override fun onReceivedError(view: WebView, request: WebResourceRequest, error: WebResourceError) { + super.onReceivedError(view, request, error) + if (request.isForMainFrame) { + onLoaded() + } + } } with(settings) { diff --git a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/components/SinglePageBrowser.kt b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/components/SinglePageBrowser.kt index 974b49b1c..3f9890db5 100644 --- a/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/components/SinglePageBrowser.kt +++ b/HTTPShortcuts/app/src/main/kotlin/ch/rmy/android/http_shortcuts/components/SinglePageBrowser.kt @@ -5,6 +5,7 @@ import android.content.Context import android.graphics.Bitmap import android.graphics.Color import android.view.ViewGroup.LayoutParams.MATCH_PARENT +import android.webkit.WebResourceError import android.webkit.WebResourceRequest import android.webkit.WebView import android.webkit.WebViewClient @@ -125,6 +126,13 @@ private class SinglePageWebView( context.openURL(request.url) } } + + override fun onReceivedError(view: WebView, request: WebResourceRequest, error: WebResourceError) { + super.onReceivedError(view, request, error) + if (request.isForMainFrame) { + onLoaded() + } + } } with(settings) {