Merge "Editor: Make the Insertion handle start/finish the selection action mode on tap."
diff --git a/core/java/android/widget/Editor.java b/core/java/android/widget/Editor.java
index 6d7a547..7d3c9c9 100644
--- a/core/java/android/widget/Editor.java
+++ b/core/java/android/widget/Editor.java
@@ -3702,7 +3702,7 @@
private static final int DELAY_BEFORE_HANDLE_FADES_OUT = 4000;
private static final int RECENT_CUT_COPY_DURATION = 15 * 1000; // seconds
- // Used to detect taps on the insertion handle, which will affect the ActionPopupWindow
+ // Used to detect taps on the insertion handle, which will affect the selection action mode
private float mDownPositionX, mDownPositionY;
private Runnable mHider;
@@ -3717,17 +3717,12 @@
final long durationSinceCutOrCopy =
SystemClock.uptimeMillis() - TextView.LAST_CUT_OR_COPY_TIME;
if (durationSinceCutOrCopy < RECENT_CUT_COPY_DURATION) {
- showActionPopupWindow(0);
+ startSelectionActionModeWithoutSelection();
}
hideAfterDelay();
}
- public void showWithActionPopup() {
- show();
- showActionPopupWindow(0);
- }
-
private void hideAfterDelay() {
if (mHider == null) {
mHider = new Runnable() {
@@ -3789,11 +3784,11 @@
final int touchSlop = viewConfiguration.getScaledTouchSlop();
if (distanceSquared < touchSlop * touchSlop) {
- if (mActionPopupWindow != null && mActionPopupWindow.isShowing()) {
- // Tapping on the handle dismisses the displayed action popup
- mActionPopupWindow.hide();
+ // Tapping on the handle toggles the selection action mode.
+ if (mSelectionActionMode != null) {
+ mSelectionActionMode.finish();
} else {
- showWithActionPopup();
+ startSelectionActionModeWithoutSelection();
}
}
}
@@ -4078,10 +4073,6 @@
getHandle().show();
}
- public void showWithActionPopup() {
- getHandle().showWithActionPopup();
- }
-
public void hide() {
if (mHandle != null) {
mHandle.hide();