Handle IME hide internal state correctly. am: e68d6f53ce am: f6244ab6ae am: 82977b9a04
Change-Id: Ib23a071b198411991444c9fd588ba8a81aa9a05a
This commit is contained in:
@@ -878,8 +878,7 @@ public class InputMethodService extends AbstractInputMethodService {
|
||||
}
|
||||
|
||||
private void notifyImeHidden() {
|
||||
setImeWindowStatus(IME_ACTIVE | IME_INVISIBLE, mBackDisposition);
|
||||
onPreRenderedWindowVisibilityChanged(false /* setVisible */);
|
||||
doHideWindow();
|
||||
}
|
||||
|
||||
private void removeImeSurface() {
|
||||
@@ -2284,7 +2283,9 @@ public class InputMethodService extends AbstractInputMethodService {
|
||||
if (mDecorViewVisible) {
|
||||
// When insets API is enabled, it is responsible for client and server side
|
||||
// visibility of IME window.
|
||||
if (!isVisibilityAppliedUsingInsetsConsumer()) {
|
||||
if (isVisibilityAppliedUsingInsetsConsumer()) {
|
||||
mInputView.dispatchWindowVisibilityChanged(View.GONE);
|
||||
} else {
|
||||
mWindow.hide();
|
||||
}
|
||||
mDecorViewVisible = false;
|
||||
|
||||
Reference in New Issue
Block a user