Allow drag flings in PiP2 via PipTransitionState
Use PipTransitionState as an "event hub" to allow
PiP drag and fling animations through PipMotionHelper.
Furthermore, adopt the Approach #2 described in go/pip2-transitions
to use transitions to update pinned task's bounds in Core instead
of using direct applyTransaction() calls.
Ensure, through state updates connected to transitions that interactions
are disallowed until all leash and WM state updates are complete;
this should ultimately avoid any flickers while interacting with PiP.
Bug: 332770512
Test: adb shell setprop wm_shell.pip2 1 \
&& adb shell am crash com.android.systemui
Test: swipe-up to enter PiP and drag PiP window
Change-Id: If71b47103295563e3d419427d7abbc5ae67829bc
7 files changed