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

Commit b5abfdde authored by Evan Rosky's avatar Evan Rosky Committed by Android (Google) Code Review
Browse files

Merge "Small preventative fixes/refactors" into main

parents 10c2c1a9 f5e3ece9
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -1935,8 +1935,7 @@ class BackNavigationController {
            for (int i = penActivities.length - 1; i >= 0; --i) {
                ActivityRecord resetActivity = penActivities[i];
                if (transition.isInTransition(resetActivity)) {
                    resetActivity.mTransitionController.setReady(
                            resetActivity.getDisplayContent(), true);
                    transition.setReady(resetActivity.getDisplayContent(), true);
                    return true;
                }
            }
@@ -1991,18 +1990,12 @@ class BackNavigationController {
                activity.makeVisibleIfNeeded(null /* starting */, true /* notifyToClient */);
            }
        }
        boolean needTransition = false;
        final DisplayContent dc = affects.get(0).getDisplayContent();
        for (int i = affects.size() - 1; i >= 0; --i) {
            final ActivityRecord activity = affects.get(i);
            needTransition |= tc.isCollecting(activity);
        }
        if (prepareOpen != null) {
            if (needTransition) {
            if (prepareOpen.hasChanges()) {
                tc.requestStartTransition(prepareOpen,
                        null /*startTask */, null /* remoteTransition */,
                        null /* displayChange */);
                tc.setReady(dc);
                prepareOpen.setReady(affects.get(0), true);
                return prepareOpen;
            } else {
                prepareOpen.abort();
+9 −0
Original line number Diff line number Diff line
@@ -3354,6 +3354,15 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
        return chg.hasChanged();
    }

    boolean hasChanges() {
        for (int i = 0; i < mParticipants.size(); ++i) {
            if (mChanges.get(mParticipants.valueAt(i)).hasChanged()) {
                return true;
            }
        }
        return false;
    }

    @VisibleForTesting
    static class ChangeInfo {
        private static final int FLAG_NONE = 0;