Merge "Fix to prevent animated tuck repeating." into main
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuView.java b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuView.java
index 334cc87..035ccbd 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuView.java
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuView.java
@@ -226,15 +226,15 @@
             // onArrivalAtPosition() is called at the end of the animation.
         } else {
             mMenuAnimationController.moveToPosition(position);
-            onArrivalAtPosition(); // no animation, so we call this immediately.
+            onArrivalAtPosition(true); // no animation, so we call this immediately.
         }
     }
 
-    void onArrivalAtPosition() {
+    void onArrivalAtPosition(boolean moveToEdgeIfTucked) {
         final PointF position = getMenuPosition();
         onBoundsInParentChanged((int) position.x, (int) position.y);
 
-        if (isMoveToTucked()) {
+        if (isMoveToTucked() && moveToEdgeIfTucked) {
             mMenuAnimationController.moveToEdgeAndHide();
         }
     }
diff --git a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
index 3acf80d..f2e9531 100644
--- a/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
+++ b/packages/SystemUI/src/com/android/systemui/accessibility/floatingmenu/MenuViewLayer.java
@@ -446,7 +446,7 @@
             }
         }
         if (Flags.floatingMenuImeDisplacementAnimation()) {
-            mMenuView.onArrivalAtPosition();
+            mMenuView.onArrivalAtPosition(false);
         }
     }