Merge "Account for recents animation when reporting client visibility" into sc-dev am: 5af8fe680b

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15245722

Change-Id: I5066a5f8e3c8839b2cc7ae0d86a5f5f2799a0dfa
This commit is contained in:
Winson Chung
2021-07-17 00:00:10 +00:00
committed by Automerger Merge Worker

View File

@@ -4725,7 +4725,8 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
*/
private void postApplyAnimation(boolean visible) {
final boolean delayed = isAnimating(PARENTS | CHILDREN,
ANIMATION_TYPE_APP_TRANSITION | ANIMATION_TYPE_WINDOW_ANIMATION);
ANIMATION_TYPE_APP_TRANSITION | ANIMATION_TYPE_WINDOW_ANIMATION
| ANIMATION_TYPE_RECENTS);
if (!delayed) {
// We aren't delayed anything, but exiting windows rely on the animation finished
// callback being called in case the ActivityRecord was pretending to be delayed,
@@ -4745,7 +4746,8 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
// updated.
// If we're becoming invisible, update the client visibility if we are not running an
// animation. Otherwise, we'll update client visibility in onAnimationFinished.
if (visible || !isAnimating(PARENTS, ANIMATION_TYPE_APP_TRANSITION)) {
if (visible || !isAnimating(PARENTS,
ANIMATION_TYPE_APP_TRANSITION | ANIMATION_TYPE_RECENTS)) {
setClientVisible(visible);
}