diff options
| -rw-r--r-- | core/java/android/view/InsetsAnimationControlImpl.java | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/core/java/android/view/InsetsAnimationControlImpl.java b/core/java/android/view/InsetsAnimationControlImpl.java index 1ec7c41e4395..17a3a12d3b79 100644 --- a/core/java/android/view/InsetsAnimationControlImpl.java +++ b/core/java/android/view/InsetsAnimationControlImpl.java @@ -28,6 +28,7 @@ import static android.view.InsetsAnimationControlImplProto.PENDING_FRACTION;  import static android.view.InsetsAnimationControlImplProto.PENDING_INSETS;  import static android.view.InsetsAnimationControlImplProto.SHOWN_ON_FINISH;  import static android.view.InsetsAnimationControlImplProto.TMP_MATRIX; +import static android.view.InsetsController.ANIMATION_TYPE_SHOW;  import static android.view.InsetsController.AnimationType;  import static android.view.InsetsController.DEBUG;  import static android.view.InsetsController.LAYOUT_INSETS_DURING_ANIMATION_SHOWN; @@ -469,8 +470,10 @@ public class InsetsAnimationControlImpl implements InternalInsetsAnimationContro              }              addTranslationToMatrix(side, offset, mTmpMatrix, mTmpFrame); -            final boolean visible = mPendingFraction == 0 && source != null -                    ? source.isVisible() +            // The first frame of ANIMATION_TYPE_SHOW should be invisible since it is animated from +            // the hidden state. +            final boolean visible = mPendingFraction == 0 +                    ? mAnimationType != ANIMATION_TYPE_SHOW                      : !mFinished || mShownOnFinish;              if (outState != null && source != null) { |