am 01810bbb: am 06a591cd: Fix last change -- don\'t call startInputInner() with lock held.

* commit '01810bbb67b7af741b0dde0d7ccdadb76a46ed63':
  Fix last change -- don't call startInputInner() with lock held.
This commit is contained in:
Dianne Hackborn
2012-02-16 14:45:57 -08:00
committed by Android Git Automerger

View File

@ -336,6 +336,7 @@ public final class InputMethodManager {
} }
case MSG_UNBIND: { case MSG_UNBIND: {
final int sequence = msg.arg1; final int sequence = msg.arg1;
boolean startInput = false;
synchronized (mH) { synchronized (mH) {
if (mBindSequence == sequence) { if (mBindSequence == sequence) {
if (false) { if (false) {
@ -356,10 +357,13 @@ public final class InputMethodManager {
mServedConnecting = true; mServedConnecting = true;
} }
if (mActive) { if (mActive) {
startInput = true;
}
}
}
if (startInput) {
startInputInner(); startInputInner();
} }
}
}
return; return;
} }
case MSG_SET_ACTIVE: { case MSG_SET_ACTIVE: {
@ -1209,12 +1213,13 @@ public final class InputMethodManager {
mService.windowGainedFocus(mClient, rootView.getWindowToken(), mService.windowGainedFocus(mClient, rootView.getWindowToken(),
focusedView != null, isTextEditor, softInputMode, first, focusedView != null, isTextEditor, softInputMode, first,
windowFlags); windowFlags);
if (startInput) {
startInputInner();
}
} catch (RemoteException e) { } catch (RemoteException e) {
} }
} }
if (startInput) {
startInputInner();
}
} }
/** @hide */ /** @hide */