summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2012-02-16 14:44:03 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2012-02-16 14:44:03 -0800
commit1db7eeac74d1455991e1dc0f532b47276d0c679c (patch)
treea9dc57eb2268675f4a573ea485512cc64dcf9793 /core
parent9777fb106f3705e2a9610c4f9020d7f68941d83c (diff)
parent06a591cdd6d90600db006906d5d1524d156d6529 (diff)
downloadframeworks_base-1db7eeac74d1455991e1dc0f532b47276d0c679c.zip
frameworks_base-1db7eeac74d1455991e1dc0f532b47276d0c679c.tar.gz
frameworks_base-1db7eeac74d1455991e1dc0f532b47276d0c679c.tar.bz2
am 06a591cd: Fix last change -- don\'t call startInputInner() with lock held.
* commit '06a591cdd6d90600db006906d5d1524d156d6529': Fix last change -- don't call startInputInner() with lock held.
Diffstat (limited to 'core')
-rw-r--r--core/java/android/view/inputmethod/InputMethodManager.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/core/java/android/view/inputmethod/InputMethodManager.java b/core/java/android/view/inputmethod/InputMethodManager.java
index 4e85425..925e781 100644
--- a/core/java/android/view/inputmethod/InputMethodManager.java
+++ b/core/java/android/view/inputmethod/InputMethodManager.java
@@ -336,6 +336,7 @@ public final class InputMethodManager {
}
case MSG_UNBIND: {
final int sequence = msg.arg1;
+ boolean startInput = false;
synchronized (mH) {
if (mBindSequence == sequence) {
if (false) {
@@ -356,10 +357,13 @@ public final class InputMethodManager {
mServedConnecting = true;
}
if (mActive) {
- startInputInner();
+ startInput = true;
}
}
}
+ if (startInput) {
+ startInputInner();
+ }
return;
}
case MSG_SET_ACTIVE: {
@@ -1209,12 +1213,13 @@ public final class InputMethodManager {
mService.windowGainedFocus(mClient, rootView.getWindowToken(),
focusedView != null, isTextEditor, softInputMode, first,
windowFlags);
- if (startInput) {
- startInputInner();
- }
} catch (RemoteException e) {
}
}
+
+ if (startInput) {
+ startInputInner();
+ }
}
/** @hide */