diff options
| author | George Mount <mount@google.com> | 2014-05-09 13:17:52 -0700 |
|---|---|---|
| committer | George Mount <mount@google.com> | 2014-05-13 13:07:06 -0700 |
| commit | 30da61d477bcb6cc7718f9516c444359352fe148 (patch) | |
| tree | 0d13170ad1a3e058b954591c0b451aa5f53830ec /core/java/android/transition/Visibility.java | |
| parent | abb352a941cbd87c14cce9ccfa83157b913d41f2 (diff) | |
Add view name to Transition matching.
Bug 14625214
Change-Id: Ia1b21e6bd0ea4892b504746e582aeb175e0f0506
Diffstat (limited to 'core/java/android/transition/Visibility.java')
| -rw-r--r-- | core/java/android/transition/Visibility.java | 29 |
1 files changed, 9 insertions, 20 deletions
diff --git a/core/java/android/transition/Visibility.java b/core/java/android/transition/Visibility.java index 6e6496cd1431..0f7638b2e337 100644 --- a/core/java/android/transition/Visibility.java +++ b/core/java/android/transition/Visibility.java @@ -162,26 +162,15 @@ public abstract class Visibility extends Transition { public Animator createAnimator(ViewGroup sceneRoot, TransitionValues startValues, TransitionValues endValues) { VisibilityInfo visInfo = getVisibilityChangeInfo(startValues, endValues); - if (visInfo.visibilityChange) { - // Only transition views that are either targets of this transition - // or whose parent hierarchies remain stable between scenes - boolean isTarget = false; - if (mTargets.size() > 0 || mTargetIds.size() > 0) { - View startView = startValues != null ? startValues.view : null; - View endView = endValues != null ? endValues.view : null; - int startId = startView != null ? startView.getId() : -1; - int endId = endView != null ? endView.getId() : -1; - isTarget = isValidTarget(startView, startId) || isValidTarget(endView, endId); - } - if (isTarget || ((visInfo.startParent != null || visInfo.endParent != null))) { - if (visInfo.fadeIn) { - return onAppear(sceneRoot, startValues, visInfo.startVisibility, - endValues, visInfo.endVisibility); - } else { - return onDisappear(sceneRoot, startValues, visInfo.startVisibility, - endValues, visInfo.endVisibility - ); - } + if (visInfo.visibilityChange + && (visInfo.startParent != null || visInfo.endParent != null)) { + if (visInfo.fadeIn) { + return onAppear(sceneRoot, startValues, visInfo.startVisibility, + endValues, visInfo.endVisibility); + } else { + return onDisappear(sceneRoot, startValues, visInfo.startVisibility, + endValues, visInfo.endVisibility + ); } } return null; |
