Merge "Fix issue where popup jumps to full size before closing" into ub-launcher3-qt-future-dev

This commit is contained in:
Tony Wickham
2019-11-01 23:39:18 +00:00
committed by Android (Google) Code Review

View File

@@ -360,10 +360,14 @@ public abstract class ArrowPopup extends AbstractFloatingView {
final TimeInterpolator revealInterpolator = ACCEL_DEACCEL;
// Rectangular reveal.
mEndRect.set(0, 0, getMeasuredWidth(), getMeasuredHeight());
final ValueAnimator revealAnim = createOpenCloseOutlineProvider()
.createRevealAnimator(this, false);
revealAnim.setDuration(revealDuration);
revealAnim.setInterpolator(revealInterpolator);
// Clip the popup to the initial outline while the notification dot and arrow animate.
revealAnim.start();
revealAnim.pause();
ValueAnimator fadeIn = ValueAnimator.ofFloat(0, 1);
fadeIn.setDuration(revealDuration + arrowDuration);
@@ -399,7 +403,6 @@ public abstract class ArrowPopup extends AbstractFloatingView {
if (!mIsOpen) {
return;
}
mEndRect.setEmpty();
if (getOutlineProvider() instanceof RevealOutlineAnimation) {
((RevealOutlineAnimation) getOutlineProvider()).getOutline(mEndRect);
}
@@ -471,9 +474,6 @@ public abstract class ArrowPopup extends AbstractFloatingView {
mStartRect.set(arrowCenterX - halfArrowWidth, arrowCenterY, arrowCenterX + halfArrowWidth,
arrowCenterY);
if (mEndRect.isEmpty()) {
mEndRect.set(0, 0, getMeasuredWidth(), getMeasuredHeight());
}
return new RoundedRectRevealOutlineProvider
(arrowCornerRadius, mOutlineRadius, mStartRect, mEndRect);