diff options
| author | 2023-02-08 12:15:05 +0000 | |
|---|---|---|
| committer | 2023-02-08 12:15:05 +0000 | |
| commit | 61db5d25117363c5770f2726fd7c245f8380293a (patch) | |
| tree | 1d2ae8ffcaa8d6c1e8e2fe73e158887471f095e4 | |
| parent | 1ca9fd74cd97365c6a2874c776a1b2706cb16c77 (diff) | |
| parent | 96d77cba14d829c1aa9e82af2e14ed263df68d05 (diff) | |
Merge "RESTRICT AUTOMERGE Revert "Let the system dialog honor FLAG_ALT_FOCUSABLE_IM"" into tm-qpr-dev
4 files changed, 0 insertions, 49 deletions
diff --git a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java index 8c2c964e2d2c..677871f6c85f 100644 --- a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java +++ b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java @@ -357,7 +357,6 @@ final class SaveUi { params.width = WindowManager.LayoutParams.MATCH_PARENT; params.accessibilityTitle = context.getString(R.string.autofill_save_accessibility_title); params.windowAnimations = R.style.AutofillSaveAnimation; - params.setTrustedOverlay(); show(); } diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 45dacbbba75e..03b3ef0b4ee5 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -5679,14 +5679,6 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP && imeTarget.compareTo(this) <= 0; return inTokenWithAndAboveImeTarget; } - - // The condition is for the system dialog not belonging to any Activity. - // (^FLAG_NOT_FOCUSABLE & FLAG_ALT_FOCUSABLE_IM) means the dialog is still focusable but - // should be placed above the IME window. - if ((mAttrs.flags & (FLAG_NOT_FOCUSABLE | FLAG_ALT_FOCUSABLE_IM)) - == FLAG_ALT_FOCUSABLE_IM && isTrustedOverlay() && canAddInternalSystemWindow()) { - return true; - } return false; } 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 514aec1c6fc3..219f4415c623 100644 --- a/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/WindowStateTests.java @@ -42,7 +42,6 @@ import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL; import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION; import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD; -import static android.view.WindowManager.LayoutParams.TYPE_SECURE_SYSTEM_OVERLAY; import static android.view.WindowManager.LayoutParams.TYPE_TOAST; import static com.android.dx.mockito.inline.extended.ExtendedMockito.doNothing; @@ -975,19 +974,6 @@ public class WindowStateTests extends WindowTestsBase { assertFalse(sameTokenWindow.needsRelativeLayeringToIme()); } - @UseTestDisplay(addWindows = {W_ACTIVITY, W_INPUT_METHOD}) - @Test - public void testNeedsRelativeLayeringToIme_systemDialog() { - WindowState systemDialogWindow = createWindow(null, TYPE_SECURE_SYSTEM_OVERLAY, - mDisplayContent, - "SystemDialog", true); - mDisplayContent.setImeLayeringTarget(mAppWindow); - mAppWindow.getRootTask().setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - makeWindowVisible(mImeWindow); - systemDialogWindow.mAttrs.flags |= FLAG_ALT_FOCUSABLE_IM; - assertTrue(systemDialogWindow.needsRelativeLayeringToIme()); - } - @Test public void testSetFreezeInsetsState() { final WindowState app = createWindow(null, TYPE_APPLICATION, "app"); diff --git a/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java b/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java index 7959d82ae22f..77fca451547d 100644 --- a/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java @@ -22,7 +22,6 @@ import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; -import static android.view.WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_ABOVE_SUB_PANEL; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG; @@ -32,7 +31,6 @@ import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_PANEL; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL; import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION; import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL; -import static android.view.WindowManager.LayoutParams.TYPE_SECURE_SYSTEM_OVERLAY; import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR_ADDITIONAL; import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR_SUB_PANEL; import static android.view.WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY; @@ -545,28 +543,4 @@ public class ZOrderingTests extends WindowTestsBase { assertZOrderGreaterThan(mTransaction, popupWindow.getSurfaceControl(), mDisplayContent.getImeContainer().getSurfaceControl()); } - - @Test - public void testSystemDialogWindow_expectHigherThanIme_inMultiWindow() { - // Simulate the app window is in multi windowing mode and being IME target - mAppWindow.getConfiguration().windowConfiguration.setWindowingMode( - WINDOWING_MODE_MULTI_WINDOW); - mDisplayContent.setImeLayeringTarget(mAppWindow); - mDisplayContent.setImeInputTarget(mAppWindow); - makeWindowVisible(mImeWindow); - - // Create a popupWindow - final WindowState systemDialogWindow = createWindow(null, TYPE_SECURE_SYSTEM_OVERLAY, - mDisplayContent, "SystemDialog", true); - systemDialogWindow.mAttrs.flags |= FLAG_ALT_FOCUSABLE_IM; - spyOn(systemDialogWindow); - - mDisplayContent.assignChildLayers(mTransaction); - - // Verify the surface layer of the popupWindow should higher than IME - verify(systemDialogWindow).needsRelativeLayeringToIme(); - assertThat(systemDialogWindow.needsRelativeLayeringToIme()).isTrue(); - assertZOrderGreaterThan(mTransaction, systemDialogWindow.getSurfaceControl(), - mDisplayContent.getImeContainer().getSurfaceControl()); - } } |