From a59a0a7d576494d92c4cfbe05b2c7b0cfc009d55 Mon Sep 17 00:00:00 2001 From: Kazuki Takise Date: Wed, 16 Nov 2022 21:14:23 +0900 Subject: [PATCH] Collect task in getOrCreateRootTask Some CTS tests launch a freeform task and then replaces the activity with a new one with fullscreen ActivityOptions. As the new windowing mode is set in getOrCreateRootTask(), currently this task isn't collected, and there's no way for Shell to transition this task properly. Bug: 242483894 Test: KeyboardVisibilityControlTest Test: ImeInsetsControllerTest Change-Id: Ibf0efddf3dea1cb9ed8b874348a4d4d75d609371 --- services/core/java/com/android/server/wm/TaskDisplayArea.java | 1 + 1 file changed, 1 insertion(+) diff --git a/services/core/java/com/android/server/wm/TaskDisplayArea.java b/services/core/java/com/android/server/wm/TaskDisplayArea.java index ff09163c151de..0cadc25b2abc4 100644 --- a/services/core/java/com/android/server/wm/TaskDisplayArea.java +++ b/services/core/java/com/android/server/wm/TaskDisplayArea.java @@ -929,6 +929,7 @@ final class TaskDisplayArea extends DisplayArea { // Update windowing mode if necessary, e.g. launch into a different windowing mode. if (windowingMode != WINDOWING_MODE_UNDEFINED && candidateTask.isRootTask() && candidateTask.getWindowingMode() != windowingMode) { + candidateTask.mTransitionController.collect(candidateTask); candidateTask.setWindowingMode(windowingMode); } return candidateTask.getRootTask();