| Index: content/public/android/java/src/org/chromium/content/browser/input/CursorController.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/input/CursorController.java b/content/public/android/java/src/org/chromium/content/browser/input/CursorController.java
|
| index 68f88bc950386cbd86cc722649930ef4e7127ea8..5bf4bada8af023347ff231547ad4ce5ce526df80 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/input/CursorController.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/input/CursorController.java
|
| @@ -4,38 +4,57 @@
|
|
|
| package org.chromium.content.browser.input;
|
|
|
| +import android.graphics.Rect;
|
| import android.view.ViewTreeObserver;
|
|
|
| /**
|
| * A CursorController instance can be used to control a cursor in the text.
|
| */
|
| -interface CursorController extends ViewTreeObserver.OnTouchModeChangeListener {
|
| +abstract class CursorController implements ViewTreeObserver.OnTouchModeChangeListener {
|
| +
|
| + private Rect mVisibleClippingRectangle;
|
|
|
| /**
|
| * Hide the cursor controller from screen.
|
| */
|
| - void hide();
|
| + abstract void hide();
|
|
|
| /**
|
| * @return true if the CursorController is currently visible
|
| */
|
| - boolean isShowing();
|
| + abstract boolean isShowing();
|
|
|
| /**
|
| * Called when the handle is about to start updating its position.
|
| * @param handle
|
| */
|
| - void beforeStartUpdatingPosition(HandleView handle);
|
| + abstract void beforeStartUpdatingPosition(HandleView handle);
|
|
|
| /**
|
| * Update the controller's position.
|
| */
|
| - void updatePosition(HandleView handle, int x, int y);
|
| + abstract void updatePosition(HandleView handle, int x, int y);
|
|
|
| /**
|
| * Called when the view is detached from window. Perform house keeping task, such as
|
| * stopping Runnable thread that would otherwise keep a reference on the context, thus
|
| * preventing the activity to be recycled.
|
| */
|
| - void onDetached();
|
| + abstract void onDetached();
|
| +
|
| + /**
|
| + * Sets the visible rectangle for text input elements as supplied by Blink.
|
| + */
|
| + public void setVisibleClippingRectangle(int left, int top, int right, int bottom) {
|
| + if (mVisibleClippingRectangle == null) {
|
| + mVisibleClippingRectangle = new Rect(left, top, right, bottom);
|
| + } else {
|
| + mVisibleClippingRectangle.set(left,top,right,bottom);
|
| + }
|
| + }
|
| +
|
| + Rect getVisibleClippingRectangle() {
|
| + return mVisibleClippingRectangle;
|
| + }
|
| +
|
| }
|
|
|