Loading services/core/java/com/android/server/wm/BackNavigationController.java +3 −10 Original line number Diff line number Diff line Loading @@ -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; } } Loading Loading @@ -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(); Loading services/core/java/com/android/server/wm/Transition.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading Loading
services/core/java/com/android/server/wm/BackNavigationController.java +3 −10 Original line number Diff line number Diff line Loading @@ -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; } } Loading Loading @@ -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(); Loading
services/core/java/com/android/server/wm/Transition.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading