summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/InsetsPolicy.java3
-rw-r--r--services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java6
2 files changed, 7 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/InsetsPolicy.java b/services/core/java/com/android/server/wm/InsetsPolicy.java
index 506396a932fe..f578fe0c111e 100644
--- a/services/core/java/com/android/server/wm/InsetsPolicy.java
+++ b/services/core/java/com/android/server/wm/InsetsPolicy.java
@@ -454,8 +454,7 @@ class InsetsPolicy {
final InsetsSource originalImeSource = originalState.peekSource(ITYPE_IME);
if (originalImeSource != null) {
- final boolean imeVisibility =
- w.mActivityRecord.mLastImeShown || w.getRequestedVisibility(ITYPE_IME);
+ final boolean imeVisibility = w.getRequestedVisibility(ITYPE_IME);
final InsetsState state = copyState ? new InsetsState(originalState)
: originalState;
final InsetsSource imeSource = new InsetsSource(originalImeSource);
diff --git a/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java b/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java
index 650286a8b111..0568f2acf366 100644
--- a/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java
@@ -1032,6 +1032,9 @@ public class WindowStateTests extends WindowTestsBase {
// Simulate app requests IME with updating all windows Insets State when IME is above app.
mDisplayContent.setImeLayeringTarget(app);
mDisplayContent.setImeInputTarget(app);
+ final InsetsVisibilities requestedVisibilities = new InsetsVisibilities();
+ requestedVisibilities.setVisibility(ITYPE_IME, true);
+ app.setRequestedVisibilities(requestedVisibilities);
assertTrue(mDisplayContent.shouldImeAttachedToApp());
controller.getImeSourceProvider().scheduleShowImePostLayout(app);
controller.getImeSourceProvider().getSource().setVisible(true);
@@ -1069,6 +1072,9 @@ public class WindowStateTests extends WindowTestsBase {
app2.mActivityRecord.mImeInsetsFrozenUntilStartInput = true;
mDisplayContent.setImeLayeringTarget(app);
mDisplayContent.setImeInputTarget(app);
+ final InsetsVisibilities requestedVisibilities = new InsetsVisibilities();
+ requestedVisibilities.setVisibility(ITYPE_IME, true);
+ app.setRequestedVisibilities(requestedVisibilities);
assertTrue(mDisplayContent.shouldImeAttachedToApp());
controller.getImeSourceProvider().scheduleShowImePostLayout(app);
controller.getImeSourceProvider().getSource().setVisible(true);