diff options
| -rw-r--r-- | libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java | 6 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java | 7 |
2 files changed, 11 insertions, 2 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java index 7f8cfaeb9c03..5e36a102a438 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java @@ -332,7 +332,11 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @Override public void onThresholdCrossed() { - BackAnimationController.this.onThresholdCrossed(); + if (predictiveBackDelayWmTransition()) { + mShellExecutor.execute(BackAnimationController.this::onThresholdCrossed); + } else { + BackAnimationController.this.onThresholdCrossed(); + } } @Override diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java index 237ec7cfce7f..6cda192c4198 100644 --- a/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java +++ b/packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java @@ -22,6 +22,7 @@ import static android.view.MotionEvent.TOOL_TYPE_FINGER; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION; import static com.android.systemui.Flags.edgebackGestureHandlerGetRunningTasksBackground; +import static com.android.systemui.Flags.predictiveBackDelayWmTransition; import static com.android.systemui.classifier.Classifier.BACK_GESTURE; import static com.android.systemui.navigationbar.gestural.Utilities.isTrackpadThreeFingerSwipe; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED; @@ -1182,6 +1183,9 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack return; } else if (dx > dy && dx > mTouchSlop) { if (mAllowGesture) { + if (!predictiveBackDelayWmTransition() && mBackAnimation != null) { + mBackAnimation.onThresholdCrossed(); + } if (mBackAnimation == null) { pilferPointers(); } @@ -1197,7 +1201,8 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack // forward touch mEdgeBackPlugin.onMotionEvent(ev); dispatchToBackAnimation(ev); - if (mBackAnimation != null && mThresholdCrossed && !mLastFrameThresholdCrossed) { + if (predictiveBackDelayWmTransition() && mBackAnimation != null + && mThresholdCrossed && !mLastFrameThresholdCrossed) { mBackAnimation.onThresholdCrossed(); } } |