* commit '01810bbb67b7af741b0dde0d7ccdadb76a46ed63': Fix last change -- don't call startInputInner() with lock held.
This commit is contained in:
@ -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 */
|
||||||
|
Reference in New Issue
Block a user