X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2FAboutDialog.java;h=4fa3fb2f744d9c92c12f2a1e7df22c37dc80cb31;hb=4e087dd6a40ef24878a308c0c9d3102d8b1acdd7;hp=ed6f8c3153eac4e9214579a016ead6e156820a1a;hpb=bcd01c3400c860a20621bd969dbd0243c3362908;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/AboutDialog.java b/app/src/main/java/com/stoutner/privacybrowser/AboutDialog.java index ed6f8c31..4fa3fb2f 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/AboutDialog.java +++ b/app/src/main/java/com/stoutner/privacybrowser/AboutDialog.java @@ -1,7 +1,7 @@ /** - * Copyright 2015 Soren Stoutner . + * Copyright 2015-2016 Soren Stoutner . * - * This file is part of Privacy Browser . + * This file is part of Privacy Browser . * * Privacy Browser is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -26,10 +26,11 @@ import android.support.annotation.NonNull; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatDialogFragment; import android.webkit.WebView; +import android.webkit.WebViewClient; public class AboutDialog extends AppCompatDialogFragment { - // onCreateDialog requires @NonNull. @Override + // onCreateDialog requires @NonNull. @NonNull public Dialog onCreateDialog(Bundle savedInstanceState) { // Create a WebView to display about_text.html @@ -37,7 +38,7 @@ public class AboutDialog extends AppCompatDialogFragment { aboutDialogWebView.loadUrl("file:///android_asset/about_text.html"); // Use AlertDialog.Builder to create the AlertDialog - AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity()); + final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity()); alertDialogBuilder.setTitle(R.string.about_privacy_browser); alertDialogBuilder.setView(aboutDialogWebView); alertDialogBuilder.setPositiveButton(R.string.dismiss, new DialogInterface.OnClickListener() { @@ -51,6 +52,16 @@ public class AboutDialog extends AppCompatDialogFragment { final AlertDialog alertDialog = alertDialogBuilder.create(); alertDialog.show(); + aboutDialogWebView.setWebViewClient(new WebViewClient() { + // shouldOverrideUrlLoading lets us close AboutDialog when a link is touched. Otherwise the dialog covers the website that loads beneath in Privacy Browser. + @Override + public boolean shouldOverrideUrlLoading(WebView view, String url) { + MainWebViewActivity.mainWebView.loadUrl(url); + alertDialog.dismiss(); + return true; + } + }); + // onCreateDialog requires the return of an AlertDialog. return alertDialog; }