@NonNull
    public static ActivityOptionsCompat makeScaleUpAnimation(@NonNull View source,
                                                             int startX, int startY, int startWidth, int startHeight) {
        return new ActivityOptionsCompatImpl(ActivityOptions.makeScaleUpAnimation(
                source, startX, startY, startWidth, startHeight));
    }
Create an ActivityOptions specifying an animation where the new activity is
scaled from a small originating area of the screen to its final full
representation.
<p/>
If the Intent this is being used with has not set its
{@link android.content.Intent#setSourceBounds(Rect)},
those bounds will be filled in for you based on the initial bounds passed
in here.

@param source      The View that the new activity is animating from. This
                   defines the coordinate space for startX and startY.
@param startX      The x starting location of the new activity, relative to
                   source.
@param startY      The y starting location of the activity, relative to source.
@param startWidth  The initial width of the new activity.
@param startHeight The initial height of the new activity.
@return Returns a new ActivityOptions object that you can use to supply
these options as the options Bundle when starting an activity.
android/android_framework/base/src/main/java/github/tornaco/android/thanos/core/compat/ActivityOptionsCompat.java