Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec108a95 authored by Miranda Kephart's avatar Miranda Kephart Committed by Android (Google) Code Review
Browse files

Merge "Fix screenshot motion spec anchor point"

parents cb40b988 4f150e08
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -497,9 +497,9 @@ public class GlobalScreenshot implements ViewTreeObserver.OnComputeInternalInset
        flashOutAnimator.addUpdateListener(animation ->
                mScreenshotFlash.setAlpha((float) animation.getAnimatedValue()));

        final PointF startPos = new PointF((float) bounds.left, (float) bounds.top);
        final PointF finalPos = new PointF(mScreenshotOffsetXPx,
                mDisplayMetrics.heightPixels - mScreenshotOffsetYPx - height * cornerScale);
        final PointF startPos = new PointF(bounds.centerX(), bounds.centerY());
        final PointF finalPos = new PointF(mScreenshotOffsetXPx + width * cornerScale / 2f,
                mDisplayMetrics.heightPixels - mScreenshotOffsetYPx - height * cornerScale / 2f);

        ValueAnimator toCorner = ValueAnimator.ofFloat(0, 1);
        toCorner.setDuration(SCREENSHOT_TO_CORNER_Y_DURATION_MS);
@@ -517,11 +517,13 @@ public class GlobalScreenshot implements ViewTreeObserver.OnComputeInternalInset
            }

            if (t < xPositionPct) {
                mScreenshotView.setX(MathUtils.lerp(
                        startPos.x, finalPos.x, mFastOutSlowIn.getInterpolation(t / xPositionPct)));
                float xCenter = MathUtils.lerp(startPos.x, finalPos.x,
                        mFastOutSlowIn.getInterpolation(t / xPositionPct));
                mScreenshotView.setX(xCenter - width * mScreenshotView.getScaleX() / 2f);
            }
            mScreenshotView.setY(MathUtils.lerp(
                    startPos.y, finalPos.y, mFastOutSlowIn.getInterpolation(t)));
            float yCenter = MathUtils.lerp(startPos.y, finalPos.y,
                    mFastOutSlowIn.getInterpolation(t));
            mScreenshotView.setY(yCenter - height * mScreenshotView.getScaleY() / 2f);
        });

        toCorner.addListener(new AnimatorListenerAdapter() {