summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wei Sheng Shih <wilsonshih@google.com> 2024-11-04 09:01:26 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-11-04 09:01:26 +0000
commitd51c91e90b59ea5cae37fe852cb0875c1d4e2606 (patch)
tree2f735560d7bb9647aeeb72933116ca00a7c97f9f
parenta2cbecbb791a8de381f7f1582cd0c445375596f3 (diff)
parente1eb9af2f77642d4189597bb242dda2c4a5800cb (diff)
Merge "Do not start pending animation if another transition is collecting." into main
-rw-r--r--services/core/java/com/android/server/wm/BackNavigationController.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/BackNavigationController.java b/services/core/java/com/android/server/wm/BackNavigationController.java
index 1a70e6896d18..fc3419e8eb77 100644
--- a/services/core/java/com/android/server/wm/BackNavigationController.java
+++ b/services/core/java/com/android/server/wm/BackNavigationController.java
@@ -1038,6 +1038,12 @@ class BackNavigationController {
return;
}
+ if (mWindowManagerService.mRoot.mTransitionController.isCollecting()) {
+ Slog.v(TAG, "Skip predictive back transition, another transition is collecting");
+ cancelPendingAnimation();
+ return;
+ }
+
// Ensure the final animation targets which hidden by transition could be visible.
for (int i = 0; i < targets.size(); i++) {
final WindowContainer wc = targets.get(i).mContainer;
@@ -1066,6 +1072,7 @@ class BackNavigationController {
Slog.e(TAG, "Remote animation gone", e);
}
mPendingAnimationBuilder = null;
+ mNavigationMonitor.stopMonitorTransition();
}
/**