From 142f4dcccd88aa0feeffb6155d9e7cc226142b33 Mon Sep 17 00:00:00 2001 From: Kazuki Takise Date: Fri, 24 Mar 2023 22:18:10 +0900 Subject: [PATCH] Request transtion when a task is removed When PIP gets killed via removeRootTasksWithActivityTypes(), no transition is requested. For non-PIP tasks, processRemoveTask() is called to remove the task, in which requestCloseTransitionIfNeeded() is invoked. But in the case of PIP, removePinnedRootTaskInSurfaceTransaction() is called but we seem to miss requesting a close transition. Bug: 275021556 Bug: 273141544 Bug: 272637936 Test: PinnedStackTests Change-Id: I4c13ecc1b3c1dff15bd0d61aeafeacc1d7705460 --- .../core/java/com/android/server/wm/ActivityTaskSupervisor.java | 1 + 1 file changed, 1 insertion(+) diff --git a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java index be503fc61c4c8..feaec37fb985d 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java +++ b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java @@ -1562,6 +1562,7 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { } private void removePinnedRootTaskInSurfaceTransaction(Task rootTask) { + rootTask.mTransitionController.requestCloseTransitionIfNeeded(rootTask); /** * Workaround: Force-stop all the activities in the root pinned task before we reparent them * to the fullscreen root task. This is to guarantee that when we are removing a root task,