| Index: ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
|
| diff --git a/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java b/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
|
| index aca3a8fe2db019187d19ff5c6ef0123c1ca2c0ae..6c0e8cb1c130c6fbb6ce1c29697ef2f9653c131d 100644
|
| --- a/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
|
| +++ b/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
|
| @@ -89,7 +89,7 @@ public abstract class ViewAndroidDelegate {
|
| // TODO(hush): uncomment below when we build with API 24.
|
| // @TargetApi(Build.VERSION_CODES.N)
|
| @CalledByNative
|
| - private boolean startDragAndDrop(String text, Bitmap shadowImage) {
|
| + private boolean startDragAndDrop(String text, Bitmap shadowImage, float pageScale) {
|
| if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) return false;
|
|
|
| ViewGroup containerView = getContainerView();
|
| @@ -97,7 +97,10 @@ public abstract class ViewAndroidDelegate {
|
|
|
| ImageView imageView = new ImageView(containerView.getContext());
|
| imageView.setImageBitmap(shadowImage);
|
| - imageView.layout(0, 0, shadowImage.getWidth(), shadowImage.getHeight());
|
| + // The width and height of shadowImage are already normalized by DIP scale. Now we just
|
| + // need to normalize it by page scale.
|
| + imageView.layout(0, 0, (int) (shadowImage.getWidth() * pageScale),
|
| + (int) (shadowImage.getHeight() * pageScale));
|
|
|
| // TODO(hush): use View#startDragAndDrop when Chromium starts to build with API 24.
|
| return containerView.startDrag(ClipData.newPlainText(null, text),
|
|
|