summaryrefslogtreecommitdiffstats
path: root/core/java/android/transition
diff options
context:
space:
mode:
authorChet Haase <chet@google.com>2013-10-03 18:02:21 -0700
committerChet Haase <chet@google.com>2013-10-04 14:05:48 -0700
commitaa006133228facf2f9b61e0492fd8f724fac472f (patch)
treee2d1a7b3baa52dec9e33bdc04e8cfbf3689ca381 /core/java/android/transition
parent76a5c86df7902870c87ff07ffd0628cb10f32c00 (diff)
downloadframeworks_base-aa006133228facf2f9b61e0492fd8f724fac472f.zip
frameworks_base-aa006133228facf2f9b61e0492fd8f724fac472f.tar.gz
frameworks_base-aa006133228facf2f9b61e0492fd8f724fac472f.tar.bz2
Enable transitions in lockscreen media controller
Media controller now fades between different states. The code for doing this was already there, but this CL enables them and changes the behavior of transition's OnPreDrawListener to do the right thing. Also, this CL fixes a bug in ChangeText found while testing this change. Issue #11083563 ChangeText transition crashes when KEEP transition type used Change-Id: I5e04c28e1b5faac017b0a4e49734d9faa7fe79cd
Diffstat (limited to 'core/java/android/transition')
-rw-r--r--core/java/android/transition/ChangeText.java7
-rw-r--r--core/java/android/transition/TransitionManager.java7
2 files changed, 6 insertions, 8 deletions
diff --git a/core/java/android/transition/ChangeText.java b/core/java/android/transition/ChangeText.java
index b1be70f..8677a56 100644
--- a/core/java/android/transition/ChangeText.java
+++ b/core/java/android/transition/ChangeText.java
@@ -179,8 +179,8 @@ public class ChangeText extends Transition {
startSelectionStart = startSelectionEnd = endSelectionStart = endSelectionEnd = -1;
}
if (!startText.equals(endText)) {
- final int startColor = (Integer) startVals.get(PROPNAME_TEXT_COLOR);
- final int endColor = (Integer) endVals.get(PROPNAME_TEXT_COLOR);
+ final int startColor;
+ final int endColor;
if (mChangeBehavior != CHANGE_BEHAVIOR_IN) {
view.setText(startText);
if (view instanceof EditText) {
@@ -189,6 +189,7 @@ public class ChangeText extends Transition {
}
Animator anim;
if (mChangeBehavior == CHANGE_BEHAVIOR_KEEP) {
+ startColor = endColor = 0;
anim = ValueAnimator.ofFloat(0, 1);
anim.addListener(new AnimatorListenerAdapter() {
@Override
@@ -203,6 +204,8 @@ public class ChangeText extends Transition {
}
});
} else {
+ startColor = (Integer) startVals.get(PROPNAME_TEXT_COLOR);
+ endColor = (Integer) endVals.get(PROPNAME_TEXT_COLOR);
// Fade out start text
ValueAnimator outAnim = null, inAnim = null;
if (mChangeBehavior == CHANGE_BEHAVIOR_OUT_IN ||
diff --git a/core/java/android/transition/TransitionManager.java b/core/java/android/transition/TransitionManager.java
index 9be91d0..404709c 100644
--- a/core/java/android/transition/TransitionManager.java
+++ b/core/java/android/transition/TransitionManager.java
@@ -240,12 +240,7 @@ public class TransitionManager {
}
transition.playTransition(sceneRoot);
- // Returning false from onPreDraw() skips the current frame. This is
- // necessary to avoid artifacts caused by resetting target views
- // to their proper end states for capturing. Waiting until the next
- // frame to draw allows these views to have their mid-transition
- // values set on them again and avoid artifacts.
- return false;
+ return true;
}
};
observer.addOnPreDrawListener(listener);