Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8d3cd2c8 authored by George Mount's avatar George Mount
Browse files

Make shared element visible when exit transition finishes early.

Bug 16124915

Change-Id: I91aa4a4912f3edb298ec75dd4178572a2c941a31
parent b0a11172
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -58,6 +58,7 @@ class EnterTransitionCoordinator extends ActivityTransitionCoordinator {
    private Bundle mSharedElementsBundle;
    private boolean mWasOpaque;
    private boolean mAreViewsReady;
    private boolean mIsViewsTransitionStarted;

    public EnterTransitionCoordinator(Activity activity, ResultReceiver resultReceiver,
            ArrayList<String> sharedElementNames, boolean isReturning) {
@@ -219,7 +220,7 @@ class EnterTransitionCoordinator extends ActivityTransitionCoordinator {
    private void cancel() {
        if (!mIsCanceled) {
            mIsCanceled = true;
            if (getViewsTransition() == null) {
            if (getViewsTransition() == null || mIsViewsTransitionStarted) {
                setViewVisibility(mSharedElements, View.VISIBLE);
            } else {
                mTransitioningViews.addAll(mSharedElements);
@@ -363,6 +364,7 @@ class EnterTransitionCoordinator extends ActivityTransitionCoordinator {
                stripOffscreenViews();
            }
        }
        mIsViewsTransitionStarted = mIsViewsTransitionStarted || startEnterTransition;

        Transition transition = mergeTransitions(sharedElementTransition, viewsTransition);
        if (startSharedElementTransition) {
+1 −1
Original line number Diff line number Diff line
@@ -116,6 +116,7 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator {
        setViewVisibility(mTransitioningViews, View.VISIBLE);
        setViewVisibility(mSharedElements, View.VISIBLE);
        mIsHidden = true;
        clearState();
    }

    private void sharedElementExitBack() {
@@ -357,7 +358,6 @@ class ExitTransitionCoordinator extends ActivityTransitionCoordinator {
        }
        if (!mIsReturning && mExitNotified) {
            mActivity = null; // don't need it anymore
            clearState();
        }
    }