WindowContainerTransaction: Provide non-BLAST bounds change sync
This is to enable landing the SysUI driven PiP animation without BLAST. Without BLAST we can't support multi container sync, multi buffer sync, etc, but we can support the same sort of synchronization we've supported before. Let's recall how the old PIP animation works: At the end of the enter animation, or the beginning of the leave animation, the Surface changes size (When the Windowing mode changes). We detect this size change deep in the guts of WindowStateAnimator, and when we detect that we are called from "relayoutWindow" defer a transaction changing the PIP scaling factors. This approach is we simply allow SysUI to set a pending Transaction on a task via the WindowContainerTransaction API. The next BASE_APPLICATION window to resize in this task will consume this transaciton, and defer the transaction until the frame in which it resizes. Bug: 139371701 Bug: 139371701 Test: Manual test with pending SysUI branch Change-Id: I1e757d87e2f276db626de00685b0432508ac6d62
Loading
Please register or sign in to comment