Index: chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/TapFarFromPreviousSuppression.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/TapFarFromPreviousSuppression.java b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/TapFarFromPreviousSuppression.java |
index 5596c4b1827a737f43be774faa54c0791e82b668..d88b9b3e41b49be204c6ee859699a0b73e855917 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/TapFarFromPreviousSuppression.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/TapFarFromPreviousSuppression.java |
@@ -4,6 +4,11 @@ |
package org.chromium.chrome.browser.contextualsearch; |
+/** |
+ * Implements the policy that a Tap relatively far away from an existing Contextual Search |
+ * selection should just dismiss our UX. When a Tap is close by, we assume the user must have |
+ * missed the original intended target so we reselect based on the new Tap location. |
+ */ |
class TapFarFromPreviousSuppression extends ContextualSearchHeuristic { |
private static final double RETAP_DISTANCE_SQUARED_DP = Math.pow(75, 2); |
@@ -19,7 +24,7 @@ class TapFarFromPreviousSuppression extends ContextualSearchHeuristic { |
* @param y The y coordinate of the tap gesture. |
*/ |
TapFarFromPreviousSuppression(ContextualSearchSelectionController controller, |
- ContextualSearchTapState previousTapState, int x, int y) { |
+ ContextualSearchTapState previousTapState, int x, int y) { |
mPxToDp = controller.getPxToDp(); |
mPreviousTapState = previousTapState; |
mShouldHandleTap = shouldHandleTap(x, y); |
@@ -44,8 +49,8 @@ class TapFarFromPreviousSuppression extends ContextualSearchHeuristic { |
* tap. |
*/ |
private boolean wasTapCloseToPreviousTap(int x, int y) { |
- float deltaXDp = (mPreviousTapState.x() - x) * mPxToDp; |
- float deltaYDp = (mPreviousTapState.y() - y) * mPxToDp; |
+ float deltaXDp = (mPreviousTapState.getX() - x) * mPxToDp; |
+ float deltaYDp = (mPreviousTapState.getY() - y) * mPxToDp; |
float distanceSquaredDp = deltaXDp * deltaXDp + deltaYDp * deltaYDp; |
return distanceSquaredDp <= RETAP_DISTANCE_SQUARED_DP; |
} |