Centralize assignment of pip enter animation type
In PipTransition, the places to check enter animation type
may have different orders with different scenarios.
Assume swiping a fullscreen landscape app which can enter PiP
to portrait home:
Api request on foreground:
augmentRequest -> startEnterAnimation -> handleRotateDisplay
Api request on going to background:
startEnterAnimation -> handleRotateDisplay
Swipe to home:
Auto-pip:
augmentRequest -> handleRotateDisplay -> startEnterAnimation
No auto-pip:
handleRotateDisplay -> startEnterAnimation
To reduce the complexity of animation type management, assign
the type at entry of entering pip: PipTaskOrganizer#onTaskAppeared
Then PipTransition only needs to read it.
Note that for swiping auto-pip, the type is always ignored
because the animation is done by recents animation.
Bug: 276438425
Test: Swipe a landscape app into pip in portrait without auto-pip.
The PiP should fade in after the swipe animation.
Change-Id: I98e459fb9913d713cd3b8d44dbb691af61862c56
3 files changed