Ignore wallpaper enter animation
The alpha animation is almost unnoticeable and rare to
execute (e.g. orientation change across visibility change).
It would be more efficient, consistent and less error
prone to skip the animation which user won't aware it.
Though the original issue is about the surface position
of wallpaper animation leash:
1. WallpaperController#updateWallpaperOffset may calculate
wrong offset by using frames in different rotation.
This can be fixed by early return if !isVisible().
2. Even if the wallpaper offset is correct, the surface
position calculated by wallpaper scale will be ignored
in WindowState#updateSurfacePosition because the window
is animating (mSurfaceAnimator.hasLeash()).
This can be fixed by relaxing the condition if wallpaper
scale is not 1.
But as the reason described above, the simple bypass has more
benefit.
Bug: 191441606
Test: Launch landscape app from portriat home with traditional
rotation animation (e.g. when IME is vieible), and then
return to home with fixed (seamless) rotation. The wallpaper
should not have extra offset temporarily.
Change-Id: Iaa76ea38c27dffb96b2c1d39a3a7a9cd8fe246c4
1 file changed