| Index: android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| index 1f2941492e7de510fa3d59fb7c5674b5883ed8e2..81db590371e12efc2ea4d2b843ac55c944169a75 100644
|
| --- a/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| @@ -81,7 +81,9 @@ import java.io.File;
|
| import java.lang.annotation.Annotation;
|
| import java.net.MalformedURLException;
|
| import java.net.URL;
|
| +import java.util.ArrayList;
|
| import java.util.HashMap;
|
| +import java.util.List;
|
| import java.util.Locale;
|
| import java.util.Map;
|
| import java.util.Map.Entry;
|
| @@ -288,6 +290,8 @@ public class AwContents implements SmartClipProvider,
|
| private final AwSettings mSettings;
|
| private final ScrollAccessibilityHelper mScrollAccessibilityHelper;
|
|
|
| + private final List<PopupTouchHandleDrawable> mTouchHandleDrawables = new ArrayList<>();
|
| +
|
| private boolean mIsPaused;
|
| private boolean mIsViewVisible;
|
| private boolean mIsWindowVisible;
|
| @@ -934,6 +938,9 @@ public class AwContents implements SmartClipProvider,
|
| mAwPdfExporter.setContainerView(mContainerView);
|
| }
|
| mWebContentsDelegate.setContainerView(mContainerView);
|
| + for (PopupTouchHandleDrawable drawable: mTouchHandleDrawables) {
|
| + drawable.onContainerViewChanged(newContainerView);
|
| + }
|
| onContainerViewChanged();
|
| }
|
|
|
| @@ -2684,6 +2691,21 @@ public class AwContents implements SmartClipProvider,
|
| mFavicon = bitmap;
|
| }
|
|
|
| + @CalledByNative
|
| + private long onCreateTouchHandle() {
|
| + PopupTouchHandleDrawable drawable =
|
| + PopupTouchHandleDrawable.create(mContentViewCore, mDIPScale);
|
| + if (drawable == null) return 0L;
|
| +
|
| + mTouchHandleDrawables.add(drawable);
|
| + return drawable.getNativeDrawable();
|
| + }
|
| +
|
| + @CalledByNative
|
| + private void onDestroyAllTouchHandles() {
|
| + mTouchHandleDrawables.clear();
|
| + }
|
| +
|
| /** Callback for generateMHTML. */
|
| @CalledByNative
|
| private static void generateMHTMLCallback(
|
|
|