summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorMing-Shin Lu <lumark@google.com>2021-11-25 02:36:07 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-11-25 02:36:07 +0000
commitb0404606ed1ccd3e2d42ec5bbf0caadf931a17bd (patch)
treeb11e061c75e14c2153144b45fc7d9dbdfd0406d1 /core/java
parent669edf20836e003c7d36dd3c4741ad72cd200508 (diff)
parentcf9560a43b31f1762c4c73cc5d763e73515cd944 (diff)
Merge "Revert hide logic in ImeInsetsSourceConsumer#setControl" into sc-v2-dev am: cf9560a43b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16334306 Change-Id: I9b0dd9d77181794e93e3d5eb4d8e9c606b27d7ca
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/view/ImeInsetsSourceConsumer.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/view/ImeInsetsSourceConsumer.java b/core/java/android/view/ImeInsetsSourceConsumer.java
index 02b2c5d5db84..d609fb8eb234 100644
--- a/core/java/android/view/ImeInsetsSourceConsumer.java
+++ b/core/java/android/view/ImeInsetsSourceConsumer.java
@@ -124,7 +124,12 @@ public final class ImeInsetsSourceConsumer extends InsetsSourceConsumer {
public void setControl(@Nullable InsetsSourceControl control, int[] showTypes,
int[] hideTypes) {
super.setControl(control, showTypes, hideTypes);
- if (control == null && !isRequestedVisibleAwaitingControl()) {
+ // TODO(b/204524304): clean-up how to deal with the timing issues of hiding IME:
+ // 1) Already requested show IME, in the meantime of WM callback the control but got null
+ // control when relayout comes first
+ // 2) Make sure no regression on some implicit request IME visibility calls (e.g.
+ // toggleSoftInput)
+ if (control == null && !mIsRequestedVisibleAwaitingControl) {
hide();
removeSurface();
}