Revisit how launch animations handle View visibility
This CL refactors the way the ActivityLaunchAnimator and DialogLaunchAnimator handle the visibility of the animated View when that View implements LaunchableView. Before this CL, a View that is animated would always end up being VISIBLE, even if something made that View INVISIBLE or GONE before or during the animation. That is because our animation code would sometimes change the visibility of the View, using View.setVisibility. After this CL, when animating a LaunchableView, all the visibility changes made to the animated View are done using View.setTransitionVisibility instead. That way, a LaunchableView can track all calls to View.setVisibility only and restore the last visibility that was set on the View at the end of the animation. Doing so ensures that all calls made to View.setVisibility have the expected result once the animation is done. Bug: 264728445 Test: DialogLaunchAnimatorTest Change-Id: I5848d42ef94952ecf058d4e895164389e37e0311
Loading
Please register or sign in to comment