Tightening up rotation behavior for PIP (2/3)
- Change BoundsAnimationController to be more consistent: 1) Ensure that on animation end is always called even when cancelled to ensure animation start/end parity in the callbacks 2) Ensure that setPinnedStackSize() is only called between start/end 3) Prevent calling setPinnedStackSize() to the final bounds if the animation is cancelled - With that, we add a flag to cancel the current bounds animation when a rotation happens while the bounds are animating. In addition, we also add a check from AM to WM before applying the resize during the animation in the case where WM sends the bounds to AM, but AM lock is held while updating the exact stack bounds (once that finishes the old stale bounds would have been applied) - In addition, we can then move the handling of the of the rotation to the config change update in WM, if we handle it before the other checks. Bug: 36879891 Test: android.server.cts.ActivityManagerPinnedStackTests Change-Id: I62c6df8b349971cc82a7898ae8b26834723faec5
Loading
Please register or sign in to comment