summaryrefslogtreecommitdiff
path: root/core/java/android/webkit/WebTextView.java
diff options
context:
space:
mode:
authorLeon Scroggins <scroggo@google.com>2011-01-18 16:49:20 -0500
committerLeon Scroggins <scroggo@google.com>2011-01-19 09:41:06 -0500
commit407772390f4a1b4e1196820ea22b9327eea54019 (patch)
tree71c7fb89f8a582a6edb67630bc76ffe0419d25e3 /core/java/android/webkit/WebTextView.java
parentb25de0558c4e5440982db53a220943a899390c90 (diff)
Make WebView inactive when title bar takes focus.
Bug:3296938 Change-Id: I656e8582044acf3b0e9b417f41337833fe72c181
Diffstat (limited to 'core/java/android/webkit/WebTextView.java')
-rw-r--r--core/java/android/webkit/WebTextView.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/core/java/android/webkit/WebTextView.java b/core/java/android/webkit/WebTextView.java
index 1313fccb8bde..bd5ec7944473 100644
--- a/core/java/android/webkit/WebTextView.java
+++ b/core/java/android/webkit/WebTextView.java
@@ -132,6 +132,9 @@ import junit.framework.Assert;
private boolean mAutoFillable; // Is this textview part of an autofillable form?
private int mQueryId;
private boolean mAutoFillProfileIsSet;
+ // Used to determine whether onFocusChanged was called as a result of
+ // calling remove().
+ private boolean mInsideRemove;
// Types used with setType. Keep in sync with CachedInput.h
private static final int NORMAL_TEXT_FIELD = 0;
@@ -540,6 +543,11 @@ import junit.framework.Assert;
Rect previouslyFocusedRect) {
mFromFocusChange = true;
super.onFocusChanged(focused, direction, previouslyFocusedRect);
+ if (focused) {
+ mWebView.setActive(true);
+ } else if (!mInsideRemove) {
+ mWebView.setActive(false);
+ }
mFromFocusChange = false;
}
@@ -770,8 +778,10 @@ import junit.framework.Assert;
if (imm.isActive(this)) {
imm.hideSoftInputFromWindow(getWindowToken(), 0);
}
+ mInsideRemove = true;
mWebView.removeView(this);
mWebView.requestFocus();
+ mInsideRemove = false;
}
/**