X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2FWebview.java;h=0de84bfb20a85a94c3b09a7442e3cbf3a607de91;hb=f13613530948c04bf8c8153b441d78ba74f476c8;hp=50d67ac5a6162e0b671393961d3630c5549ddb85;hpb=7c2f9a116c63f19b26cbce1e5ea30be07aed0da7;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/Webview.java b/app/src/main/java/com/stoutner/privacybrowser/Webview.java index 50d67ac5..0de84bfb 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/Webview.java +++ b/app/src/main/java/com/stoutner/privacybrowser/Webview.java @@ -20,11 +20,15 @@ import android.view.MenuItem; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.webkit.WebChromeClient; +import android.webkit.WebResourceError; +import android.webkit.WebResourceRequest; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.EditText; import android.widget.ImageView; import android.widget.ProgressBar; +import android.widget.Toast; + import java.io.UnsupportedEncodingException; import java.net.MalformedURLException; import java.net.URL; @@ -44,6 +48,7 @@ public class Webview extends AppCompatActivity { setContentView(R.layout.activity_webview); final WebView mainWebView = (WebView) findViewById(R.id.mainWebView); + final Activity mainWebViewActivity = this; final ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { @@ -77,14 +82,17 @@ public class Webview extends AppCompatActivity { } mainWebView.setWebViewClient(new WebViewClient() { - // setWebViewClient makes this WebView the default handler for URLs inside the app, so that links are not kicked out to other apps. - // Save the URL to formattedUrlString and update urlTextBox before loading mainWebView. + // shouldOverrideUrlLoading makes this WebView the default handler for URLs inside the app, so that links are not kicked out to other apps. @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { mainWebView.loadUrl(url); return true; } + public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) { + Toast.makeText(mainWebViewActivity, "Error loading " + request + " Error: " + error, Toast.LENGTH_SHORT).show(); + } + // Update the URL in urlTextBox when the page starts to load. @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { @@ -136,7 +144,7 @@ public class Webview extends AppCompatActivity { // Allow pinch to zoom. mainWebView.getSettings().setBuiltInZoomControls(true); - // Hide zoom controls API is 11 or greater. + // Hide zoom controls if the API is 11 or greater. if (Build.VERSION.SDK_INT >= 11) { mainWebView.getSettings().setDisplayZoomControls(false); } @@ -172,7 +180,7 @@ public class Webview extends AppCompatActivity { return true; } - // @TargetApi(11) turns off the errors regarding copy and paste, which are removied from view in menu_webview.xml for lower version of Android. + // @TargetApi(11) turns off the errors regarding copy and paste, which are removed from view in menu_webview.xml for lower version of Android. @Override @TargetApi(11) public boolean onOptionsItemSelected(MenuItem menuItem) {