Fix regression in desktop decor visibility for bubble tasks.
In ag/32735920, bubble task visibility was changed to use task reordering instead of the hidden property. As part of this, the `alwaysOnTop` flag is reset to false when a bubble collapses, allowing the task to be moved to the bottom of the stack. However, desktop window decor logic uses the `alwaysOnTop` flag to determine whether to show decor elements like the app handle. This led to a regression where collapsed bubble tasks (which have `alwaysOnTop` set to false) incorrectly triggered desktop decor logic. This change fixes the issue by introducing a check in `AppHandleAndHeaderVisibilityHelper` to recognize stable bubble tasks via `BubbleController`, ensuring that collapsed bubble tasks are excluded from decor rendering decisions even when `alwaysOnTop` is false. Bug: 388630258 Bug: 408389476 Flag: com.android.wm.shell.enable_create_any_bubble Flag: com.android.window.flags.exclude_task_from_recents Test: atest WMShellUnitTests:DesktopModeWindowDecorViewModelTests Test: atest WMShellRobolectricTests:BubbleControllerTest Test: atest WMShellMultivalentTestsOnDevice:BubbleControllerTest Test: atest systemui-bubble-1-jank-suite \ --request-upload-result \ -- --enable-module-dynamic-download \ --module-arg systemui-bubble-1-jank-suite:strict-include-metric-filter:'perfetto_ft_systemui-missed_app_frames-mean' \ --test-arg com.android.tradefed.testtype.AndroidJUnitTest:class:android.platform.test.scenario.sysui.bubble.ShowMultipleBubblesAndSwitchMicrobenchmark http://ab/I40600010387932237 (flag disabled, 6.24) http://ab/I30400010385432590 (flag enabled, 10.36) Change-Id: I0ce2060bed50ff973f1046f11a9da4c6872f5333 Change-Id: I9c20f3e534f2dc9e5d7a62da83777d2ee2eda5d6
Loading
Please register or sign in to comment