diff --git a/core/java/android/app/EnterTransitionCoordinator.java b/core/java/android/app/EnterTransitionCoordinator.java index 47d3fd60c5869..73fe70f9e9f81 100644 --- a/core/java/android/app/EnterTransitionCoordinator.java +++ b/core/java/android/app/EnterTransitionCoordinator.java @@ -170,7 +170,7 @@ class EnterTransitionCoordinator extends ActivityTransitionCoordinator { private void sendSharedElementDestination() { boolean allReady; - if (allowOverlappingTransitions()) { + if (allowOverlappingTransitions() && getEnterViewsTransition() != null) { allReady = false; } else { allReady = !getDecor().isLayoutRequested(); diff --git a/core/java/android/app/ExitTransitionCoordinator.java b/core/java/android/app/ExitTransitionCoordinator.java index 3760b96b59807..f35c6e826c79e 100644 --- a/core/java/android/app/ExitTransitionCoordinator.java +++ b/core/java/android/app/ExitTransitionCoordinator.java @@ -140,7 +140,8 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator { if (getDecor() != null) { getDecor().suppressLayout(true); } - if (!mSharedElements.isEmpty() && getSharedElementTransition() != null) { + if (mExitSharedElementBundle != null && !mExitSharedElementBundle.isEmpty() && + !mSharedElements.isEmpty() && getSharedElementTransition() != null) { startTransition(new Runnable() { public void run() { startSharedElementExit();