diff options
author | Chris Warrington <cmw@google.com> | 2016-10-18 12:29:21 +0100 |
---|---|---|
committer | Chris Warrington <cmw@google.com> | 2016-10-18 12:34:18 +0100 |
commit | e3780081075c01aa1dff6d1f373cb43192b33e68 (patch) | |
tree | fb734615933a39f3d009210dc0d1457160479b35 /libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java | |
parent | 7e05eb7e57827eddc885570bc00aed8a50320dbf (diff) | |
parent | 025b8b226c8d8edba2b309ca878572f40512eca7 (diff) | |
download | gradle-perf-android-medium-mirror-goog-studio-master-dev.tar.gz |
Merge remote-tracking branch 'origin/upstream-master' into masterHEADstudio-3.4.0studio-3.2.1studio-3.1.2studio-3.0studio-2.3gradle_3.4.0gradle_3.1.2gradle_3.0.0gradle_2.3.0studio-master-devmirror-goog-studio-master-devmastermain
Change-Id: I63f5e16d09297c48432192761b840310935eb903
Diffstat (limited to 'libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java')
-rw-r--r-- | libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java b/libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java new file mode 100644 index 000000000..1418e79ea --- /dev/null +++ b/libs/utils/WordPressUtils/src/main/java/org/wordpress/android/util/helpers/WPWebChromeClient.java @@ -0,0 +1,45 @@ +package org.wordpress.android.util.helpers; + +import android.app.Activity; +import android.text.TextUtils; +import android.view.View; +import android.webkit.WebChromeClient; +import android.webkit.WebView; +import android.widget.ProgressBar; + +public class WPWebChromeClient extends WebChromeClient { + private final ProgressBar mProgressBar; + private final Activity mActivity; + private final boolean mAutoUpdateActivityTitle; + + public WPWebChromeClient(Activity activity, ProgressBar progressBar) { + mActivity = activity; + mProgressBar = progressBar; + mAutoUpdateActivityTitle = true; + } + + public WPWebChromeClient(Activity activity, + ProgressBar progressBar, + boolean autoUpdateActivityTitle) { + mActivity = activity; + mProgressBar = progressBar; + mAutoUpdateActivityTitle = autoUpdateActivityTitle; + } + + public void onProgressChanged(WebView webView, int progress) { + if (mActivity != null + && !mActivity.isFinishing() + && mAutoUpdateActivityTitle + && !TextUtils.isEmpty(webView.getTitle())) { + mActivity.setTitle(webView.getTitle()); + } + if (mProgressBar != null) { + if (progress == 100) { + mProgressBar.setVisibility(View.GONE); + } else { + mProgressBar.setVisibility(View.VISIBLE); + mProgressBar.setProgress(progress); + } + } + } +} |