summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Miller <paulmiller@google.com>2015-02-12 22:29:01 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-02-12 22:29:02 +0000
commitf88fc2863c2b42e254729fd1fab2808dcaa16b39 (patch)
treed85dc47d01dc3af888ee140c57cdf68b9d7fd60a
parenta9c8a585372f2c61270b515d4857a595012e0301 (diff)
parente6db7dcd06e8ea0dee6a476c03640dd61d9d54ae (diff)
downloadBrowser-f88fc2863c2b42e254729fd1fab2808dcaa16b39.tar.gz
Merge "Show JS alerts over their origin tab"
-rw-r--r--src/com/android/browser/Tab.java23
-rw-r--r--src/com/android/browser/TabControl.java6
2 files changed, 29 insertions, 0 deletions
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java
index a3e4a59b..9734137f 100644
--- a/src/com/android/browser/Tab.java
+++ b/src/com/android/browser/Tab.java
@@ -52,6 +52,8 @@ import android.webkit.CookieManager;
import android.webkit.GeolocationPermissions;
import android.webkit.GeolocationPermissions.Callback;
import android.webkit.HttpAuthHandler;
+import android.webkit.JsPromptResult;
+import android.webkit.JsResult;
import android.webkit.PermissionRequest;
import android.webkit.SslErrorHandler;
import android.webkit.URLUtil;
@@ -789,6 +791,27 @@ class Tab implements PictureListener {
}
@Override
+ public boolean onJsAlert(WebView view, String url, String message,
+ JsResult result) {
+ mWebViewController.getTabControl().setActiveTab(Tab.this);
+ return false;
+ }
+
+ @Override
+ public boolean onJsConfirm(WebView view, String url, String message,
+ JsResult result) {
+ mWebViewController.getTabControl().setActiveTab(Tab.this);
+ return false;
+ }
+
+ @Override
+ public boolean onJsPrompt(WebView view, String url, String message,
+ String defaultValue, JsPromptResult result) {
+ mWebViewController.getTabControl().setActiveTab(Tab.this);
+ return false;
+ }
+
+ @Override
public void onProgressChanged(WebView view, int newProgress) {
mPageLoadProgress = newProgress;
if (newProgress == 100) {
diff --git a/src/com/android/browser/TabControl.java b/src/com/android/browser/TabControl.java
index 8cb500d9..2deb1436 100644
--- a/src/com/android/browser/TabControl.java
+++ b/src/com/android/browser/TabControl.java
@@ -674,6 +674,12 @@ class TabControl {
return true;
}
+ // Used by Tab.onJsAlert() and friends
+ void setActiveTab(Tab tab) {
+ // Calls TabControl.setCurrentTab()
+ mController.setActiveTab(tab);
+ }
+
public void setOnThumbnailUpdatedListener(OnThumbnailUpdatedListener listener) {
mOnThumbnailUpdatedListener = listener;
for (Tab t : mTabs) {