Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchSelectionController.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchSelectionController.java b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchSelectionController.java |
| index 176227acfa148a17b9dd473d5a8373e3d87ef43d..b43cd80e98288fe2fbfafbb75f0f26156ef19ef6 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchSelectionController.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchSelectionController.java |
| @@ -54,6 +54,7 @@ public class ContextualSearchSelectionController { |
| private boolean mIsSelectionBeingModified; |
| private boolean mWasLastTapValid; |
| private boolean mIsWaitingForInvalidTapDetection; |
| + private boolean mIsSelectionEstablished; |
| private boolean mShouldHandleSelectionModification; |
| private boolean mDidExpandSelection; |
| @@ -188,22 +189,28 @@ public class ContextualSearchSelectionController { |
| void handleSelectionEvent(int eventType, float posXPix, float posYPix) { |
| boolean shouldHandleSelection = false; |
| switch (eventType) { |
| - case SelectionEventType.SELECTION_SHOWN: |
| + case SelectionEventType.SELECTION_HANDLES_SHOWN: |
| mWasTapGestureDetected = false; |
| mSelectionType = SelectionType.LONG_PRESS; |
| shouldHandleSelection = true; |
| break; |
| - case SelectionEventType.SELECTION_CLEARED: |
| + case SelectionEventType.SELECTION_HANDLES_CLEARED: |
| mHandler.handleSelectionDismissal(); |
| resetAllStates(); |
| break; |
| - case SelectionEventType.SELECTION_DRAG_STARTED: |
| + case SelectionEventType.SELECTION_HANDLE_DRAG_STARTED: |
| mIsSelectionBeingModified = true; |
| break; |
| - case SelectionEventType.SELECTION_DRAG_STOPPED: |
| + case SelectionEventType.SELECTION_HANDLE_DRAG_STOPPED: |
| mIsSelectionBeingModified = false; |
| shouldHandleSelection = mShouldHandleSelectionModification; |
| break; |
| + case SelectionEventType.SELECTION_ESTABLISHED: |
| + mIsSelectionEstablished = true; |
| + break; |
| + case SelectionEventType.SELECTION_DISSOLVED: |
| + mIsSelectionEstablished = false; |
| + break; |
| default: |
| } |
| @@ -232,7 +239,6 @@ public class ContextualSearchSelectionController { |
| mHandler.handleSelection(selection, isValidSelection(selection), type, mX, mY); |
| } |
| - |
| /** |
| * Resets all internal state of this class, including the tap state. |
| */ |
| @@ -363,6 +369,14 @@ public class ContextualSearchSelectionController { |
| return mIsWaitingForInvalidTapDetection; |
| } |
| + /** |
| + * @return whether the selection has been dissolved, for testing. |
| + */ |
| + @VisibleForTesting |
| + boolean isSelectionDissolved() { |
|
jdduke (slow)
2015/07/16 23:15:50
Super nit: Let's keep the getter name similar to
Donn Denman
2015/07/16 23:24:51
Done.
|
| + return !mIsSelectionEstablished; |
| + } |
| + |
| /** Determines if the given selection is valid or not. |
| * @param selection The selection portion of the context. |
| * @return whether the given selection is considered a valid target for a search. |