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

Commit 794853f6 authored by George Mount's avatar George Mount Committed by Android (Google) Code Review
Browse files

Merge "Fixed transition start delay propagation when duration = 0."

parents 4948f0ee 265f209d
Loading
Loading
Loading
Loading
+7 −3
Original line number Original line Diff line number Diff line
@@ -34,7 +34,7 @@ import android.view.ViewGroup;
public class CircularPropagation extends VisibilityPropagation {
public class CircularPropagation extends VisibilityPropagation {
    private static final String TAG = "CircularPropagation";
    private static final String TAG = "CircularPropagation";


    private float mPropagationSpeed = 4.0f;
    private float mPropagationSpeed = 3.0f;


    /**
    /**
     * Sets the speed at which transition propagation happens, relative to the duration of the
     * Sets the speed at which transition propagation happens, relative to the duration of the
@@ -91,8 +91,12 @@ public class CircularPropagation extends VisibilityPropagation {
        float maxDistance = distance(0, 0, sceneRoot.getWidth(), sceneRoot.getHeight());
        float maxDistance = distance(0, 0, sceneRoot.getWidth(), sceneRoot.getHeight());
        float distanceFraction = distance/maxDistance;
        float distanceFraction = distance/maxDistance;


        return Math.round(transition.getDuration() * directionMultiplier / mPropagationSpeed
        long duration = transition.getDuration();
                * distanceFraction);
        if (duration < 0) {
            duration = 300;
        }

        return Math.round(duration * directionMultiplier / mPropagationSpeed * distanceFraction);
    }
    }


    private static float distance(float x1, float y1, float x2, float y2) {
    private static float distance(float x1, float y1, float x2, float y2) {
+7 −3
Original line number Original line Diff line number Diff line
@@ -52,7 +52,7 @@ public class SidePropagation extends VisibilityPropagation {
     */
     */
    public static final int BOTTOM = Slide.BOTTOM;
    public static final int BOTTOM = Slide.BOTTOM;


    private float mPropagationSpeed = 4.0f;
    private float mPropagationSpeed = 3.0f;
    private int mSide = BOTTOM;
    private int mSide = BOTTOM;


    /**
    /**
@@ -129,8 +129,12 @@ public class SidePropagation extends VisibilityPropagation {
        float maxDistance = getMaxDistance(sceneRoot);
        float maxDistance = getMaxDistance(sceneRoot);
        float distanceFraction = distance/maxDistance;
        float distanceFraction = distance/maxDistance;


        return Math.round(transition.getDuration() * directionMultiplier / mPropagationSpeed
        long duration = transition.getDuration();
                * distanceFraction);
        if (duration < 0) {
            duration = 300;
        }

        return Math.round(duration * directionMultiplier / mPropagationSpeed * distanceFraction);
    }
    }


    private int distance(int viewX, int viewY, int epicenterX, int epicenterY,
    private int distance(int viewX, int viewY, int epicenterX, int epicenterY,