Index: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
index 88785c177e4d7083df2badb0f07f756141072d1b..284d06b4fcd9e22b80e934ad127ca162cd458d64 100644 |
--- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
+++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
@@ -55,6 +55,7 @@ import com.google.common.annotations.VisibleForTesting; |
import org.chromium.base.CalledByNative; |
import org.chromium.base.JNINamespace; |
+import org.chromium.base.PositionObserver; |
import org.chromium.base.WeakContext; |
import org.chromium.content.R; |
import org.chromium.content.browser.ContentViewGestureHandler.MotionEventDelegate; |
@@ -377,6 +378,8 @@ import java.util.Map; |
private Runnable mDeferredHandleFadeInRunnable; |
+ private PositionObserver mPositionObserver; |
+ |
// Size of the viewport in physical pixels as set from onSizeChanged. |
private int mViewportWidthPix; |
private int mViewportHeightPix; |
@@ -717,6 +720,7 @@ import java.util.Map; |
mHardwareAccelerated = hasHardwareAcceleration(mContext); |
mContainerView = containerView; |
+ mPositionObserver = new PositionObserver(mContainerView); |
int windowNativePointer = windowAndroid != null ? windowAndroid.getNativePointer() : 0; |
@@ -2017,7 +2021,8 @@ import java.util.Map; |
private SelectionHandleController getSelectionHandleController() { |
if (mSelectionHandleController == null) { |
- mSelectionHandleController = new SelectionHandleController(getContainerView()) { |
+ mSelectionHandleController = new SelectionHandleController( |
+ getContainerView(), mPositionObserver) { |
@Override |
public void selectBetweenCoordinates(int x1, int y1, int x2, int y2) { |
if (mNativeContentViewCore != 0 && !(x1 == x2 && y1 == y2)) { |
@@ -2043,7 +2048,8 @@ import java.util.Map; |
private InsertionHandleController getInsertionHandleController() { |
if (mInsertionHandleController == null) { |
- mInsertionHandleController = new InsertionHandleController(getContainerView()) { |
+ mInsertionHandleController = new InsertionHandleController( |
+ getContainerView(), mPositionObserver) { |
private static final int AVERAGE_LINE_HEIGHT = 14; |
@Override |