Apply the last recents animation transform on single-activity PIP tasks

- When swiping up to enter PIP w/ auto-enter, SysUI applies a transform
  on the leash which is seamlessly applied to the task (to prevent jumps
  when the leash is removed).  This was intended to be applied in both
  single and multiple activity PIP cases, but if that doesn't happen,
  then when the transform is later cleared, it will inadvertently reset
  the task's crop and matrix.

Bug: 201127015
Test: atest PinnedStackTests
Test: Open YT, enter PIP, turn screen off, turn screen back on
Change-Id: I0d6d46c7c52f7a43058902b50a26131f626ae92d
(cherry picked from commit 54d481deda)
This commit is contained in:
Winson Chung
2021-10-08 16:15:06 -07:00
committed by Android Build Coastguard Worker
parent 75f7b15085
commit cdfcf6e469

View File

@@ -2125,6 +2125,9 @@ class RootWindowContainer extends WindowContainer<DisplayContent>
final Task rootTask;
if (singleActivity) {
rootTask = task;
// Apply the last recents animation leash transform to the task entering PIP
rootTask.maybeApplyLastRecentsAnimationTransaction();
} else {
// In the case of multiple activities, we will create a new task for it and then
// move the PIP activity into the task. Note that we explicitly defer the task