]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blobdiff - app/src/main/java/com/stoutner/privacybrowser/fragments/AboutWebViewFragment.kt
Bump the minimum API to 23. https://redmine.stoutner.com/issues/793
[PrivacyBrowserAndroid.git] / app / src / main / java / com / stoutner / privacybrowser / fragments / AboutWebViewFragment.kt
index 3d36c05737e53598cdf48dac99c1415282b90974..9ee7dbed2008a8cd3a2a7a82101f0f21e5c5f35f 100644 (file)
@@ -26,6 +26,7 @@ import android.os.Bundle
 import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
+import android.webkit.WebResourceRequest
 import android.webkit.WebResourceResponse
 import android.webkit.WebView
 import android.webkit.WebViewClient
@@ -89,7 +90,7 @@ class AboutWebViewFragment : Fragment() {
 
         // Set a WebView client.
         tabWebView.webViewClient = object : WebViewClient() {
-            // `shouldOverrideUrlLoading` allows the sending of external links back to the main Privacy Browser WebView.  The deprecated `shouldOverrideUrlLoading` must be used until API >= 24.
+            // // Send external links back to the main Privacy Browser WebView.  The deprecated `shouldOverrideUrlLoading` must be used until API >= 24.
             override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean {
                 // Create an intent to view the URL.
                 val urlIntent = Intent(Intent.ACTION_VIEW)
@@ -99,13 +100,15 @@ class AboutWebViewFragment : Fragment() {
 
                 // Make it so.
                 startActivity(urlIntent)
+                
+                // Consume the click.
                 return true
             }
-
-            override fun shouldInterceptRequest(webView: WebView, url: String): WebResourceResponse? {
-                // Have the WebView asset loader process the request.
+            
+            // Process asset requests with the asset loader.
+            override fun shouldInterceptRequest(webView: WebView, webResourceRequest: WebResourceRequest): WebResourceResponse? {
                 // This allows using the `appassets.androidplatform.net` URL, which handles the loading of SVG files, which otherwise is prevented by the CORS policy.
-                return webViewAssetLoader.shouldInterceptRequest(Uri.parse(url))
+                return webViewAssetLoader.shouldInterceptRequest(webResourceRequest.url)
             }
         }
 
@@ -153,4 +156,4 @@ class AboutWebViewFragment : Fragment() {
             savedInstanceState.putInt(SCROLL_Y, tabWebView.scrollY)
         }
     }
-}
\ No newline at end of file
+}