3b/ Migrate away from finishWCT usage in recents transition
- Instead of using a finishWCT to restore the state of the tasks at the
end of the recents transition (only when returning back to the app),
we use a "book end" transition, which ensures that changes can be
applied in sync with other potential ongoing transitions in the system.
This requires that all transitions when merged are either handled,
or result in the cancelation of the existing recents transition,
otherwise an unhandled merge could result in a queued transition that
will block the new "book end" transition.
- To support these changes, WindowOrganizerController needs to handle
restoring transient order in arbitrary transitions. Because
the requested visibility when restoring transient order w/ multiple
tasks (in multiwindow) is not changed, we need to force the associated
changes to be part of the new finish transition (necessary for
the changes to be observed).
Bug: 346588978
Flag: EXEMPT adding new flag enable_shell_top_task_tracking
Test: Build SystemUI & Launcher
Test: atest WMShellUnitTests
Test: atest WmTests:TransitionTests
Test: atest WmTests:WindowOrganizerTests
Change-Id: I81d1c373a48ee269d3bbcd81ca92ed3e5a0a4912
5 files changed