X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2FWebview.java;h=cdb09a51560de21027d33f69a02432598a8d75e3;hb=fda0da47d78471ff653a84832723a52551d32a21;hp=ab78eee08a937110885f297109a0bca879446dc5;hpb=8ee8e28f3ea0b1cbab0e792fb065475953bb0b55;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 ab78eee0..cdb09a51 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/Webview.java +++ b/app/src/main/java/com/stoutner/privacybrowser/Webview.java @@ -3,23 +3,27 @@ package com.stoutner.privacybrowser; import android.app.Activity; import android.content.Intent; import android.net.Uri; -import android.support.v7.app.ActionBarActivity; import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.inputmethod.InputMethodManager; +import android.webkit.WebChromeClient; import android.webkit.WebView; +import android.webkit.WebViewClient; import android.widget.EditText; +import android.widget.ProgressBar; import java.net.URL; -public class Webview extends ActionBarActivity { +public class Webview extends AppCompatActivity { static String formattedUrlString; static WebView mainWebView; + static ProgressBar progressBar; static final String homepage = "https://www.duckduckgo.com"; @Override @@ -29,6 +33,22 @@ public class Webview extends ActionBarActivity { final EditText urlTextBox = (EditText) findViewById(R.id.urlTextBox); mainWebView = (WebView) findViewById(R.id.mainWebView); + progressBar = (ProgressBar) findViewById(R.id.progressBar); + + // setWebViewClient makes this WebView the default handler for URLs inside the app, so that links are not kicked out to other apps. + mainWebView.setWebViewClient(new WebViewClient()); + + // Update the progress bar when a page is loading. + mainWebView.setWebChromeClient(new WebChromeClient() { + public void onProgressChanged(WebView view, int progress) { + if (progress < 100) { + progressBar.setVisibility(View.VISIBLE); + } else { + progressBar.setVisibility(View.GONE); + } + progressBar.setProgress(progress); + } + }); // Allow pinch to zoom. mainWebView.getSettings().setBuiltInZoomControls(true);