diff options
author | 2014-07-24 21:19:18 +0000 | |
---|---|---|
committer | 2014-07-24 20:48:02 +0000 | |
commit | 71d34ec5bed6fe723cf5f85c1ffb64e0d9380967 (patch) | |
tree | 994e8c9d955044905349a7c9c2483a4299607e23 | |
parent | e19dfacb740ddd7d088e27034fde631291e1a14c (diff) | |
parent | b4c5d7bf218865d28f030c852fd303e127d676db (diff) |
Merge "Fix no transition when only shared element exists." into lmp-dev
-rw-r--r-- | core/java/android/app/ExitTransitionCoordinator.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/core/java/android/app/ExitTransitionCoordinator.java b/core/java/android/app/ExitTransitionCoordinator.java index a74fbdfcc031..d798dbb18966 100644 --- a/core/java/android/app/ExitTransitionCoordinator.java +++ b/core/java/android/app/ExitTransitionCoordinator.java @@ -136,14 +136,15 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator { Transition transition = getSharedElementExitTransition(); final ArrayList<View> sharedElementSnapshots = createSnapshots(mExitSharedElementBundle, mSharedElementNames); - transition.addListener(new Transition.TransitionListenerAdapter() { + transition.addListener(new ContinueTransitionListener() { @Override public void onTransitionEnd(Transition transition) { transition.removeListener(this); + super.onTransitionEnd(transition); int count = mSharedElements.size(); for (int i = 0; i < count; i++) { View sharedElement = mSharedElements.get(i); - ((ViewGroup)sharedElement.getParent()).suppressLayout(true); + ((ViewGroup) sharedElement.getParent()).suppressLayout(true); } } }); @@ -221,6 +222,8 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator { if (transition != null) { TransitionManager.beginDelayedTransition(getDecor(), transition); mTransitioningViews.get(0).invalidate(); + } else { + transitionStarted(); } } @@ -307,6 +310,8 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator { if (transition != null) { TransitionManager.beginDelayedTransition(getDecor(), transition); getDecor().invalidate(); + } else { + transitionStarted(); } } |