summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author George Mount <mount@google.com> 2014-04-30 16:24:53 -0700
committer George Mount <mount@google.com> 2014-05-01 07:11:52 -0700
commit265f209d551092a08f2969ec5fed94292d7741b6 (patch)
tree2066b211971f5d41367d6a23de1f7e45f52334c9
parentdbe2aed24f2eb9753f8f0b6a6bea731489ee12f0 (diff)
Fixed transition start delay propagation when duration = 0.
Bug 14443184 Also gave the propagation speed a tweak to make it more obvious that there is a propagation. Change-Id: If9dc3172ae6ce7e6a712ccd1b83ebec9bf880bfa
-rw-r--r--core/java/android/transition/CircularPropagation.java10
-rw-r--r--core/java/android/transition/SidePropagation.java10
2 files changed, 14 insertions, 6 deletions
diff --git a/core/java/android/transition/CircularPropagation.java b/core/java/android/transition/CircularPropagation.java
index 18a3d229cc6c..51beb51eba15 100644
--- a/core/java/android/transition/CircularPropagation.java
+++ b/core/java/android/transition/CircularPropagation.java
@@ -34,7 +34,7 @@ import android.view.ViewGroup;
public class CircularPropagation extends VisibilityPropagation {
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
@@ -91,8 +91,12 @@ public class CircularPropagation extends VisibilityPropagation {
float maxDistance = distance(0, 0, sceneRoot.getWidth(), sceneRoot.getHeight());
float distanceFraction = distance/maxDistance;
- return Math.round(transition.getDuration() * directionMultiplier / mPropagationSpeed
- * distanceFraction);
+ long duration = transition.getDuration();
+ if (duration < 0) {
+ duration = 300;
+ }
+
+ return Math.round(duration * directionMultiplier / mPropagationSpeed * distanceFraction);
}
private static float distance(float x1, float y1, float x2, float y2) {
diff --git a/core/java/android/transition/SidePropagation.java b/core/java/android/transition/SidePropagation.java
index c331945b27ca..5d38ac85f699 100644
--- a/core/java/android/transition/SidePropagation.java
+++ b/core/java/android/transition/SidePropagation.java
@@ -52,7 +52,7 @@ public class SidePropagation extends VisibilityPropagation {
*/
public static final int BOTTOM = Slide.BOTTOM;
- private float mPropagationSpeed = 4.0f;
+ private float mPropagationSpeed = 3.0f;
private int mSide = BOTTOM;
/**
@@ -129,8 +129,12 @@ public class SidePropagation extends VisibilityPropagation {
float maxDistance = getMaxDistance(sceneRoot);
float distanceFraction = distance/maxDistance;
- return Math.round(transition.getDuration() * directionMultiplier / mPropagationSpeed
- * distanceFraction);
+ long duration = transition.getDuration();
+ if (duration < 0) {
+ duration = 300;
+ }
+
+ return Math.round(duration * directionMultiplier / mPropagationSpeed * distanceFraction);
}
private int distance(int viewX, int viewY, int epicenterX, int epicenterY,