diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/BackNavigationController.java | 7 |
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(); } /** |