[macOS] On Retina displays, icon used as drag image for large image is scaled down
authormitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Dec 2017 23:35:30 +0000 (23:35 +0000)
committermitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 25 Dec 2017 23:35:30 +0000 (23:35 +0000)
https://bugs.webkit.org/show_bug.cgi?id=181154

Reviewed by Wenson Hsieh.

* page/DragController.cpp:
(WebCore::DragController::doImageDrag): When using an icon for the drag image, also adjust
  its size for the device scale factor, like we do in the not-icon case.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@226292 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/page/DragController.cpp

index c3d6c70..a3ea9fc 100644 (file)
@@ -1,3 +1,14 @@
+2017-12-25  Dan Bernstein  <mitz@apple.com>
+
+        [macOS] On Retina displays, icon used as drag image for large image is scaled down
+        https://bugs.webkit.org/show_bug.cgi?id=181154
+
+        Reviewed by Wenson Hsieh.
+
+        * page/DragController.cpp:
+        (WebCore::DragController::doImageDrag): When using an icon for the drag image, also adjust
+          its size for the device scale factor, like we do in the not-icon case.
+
 2017-12-24  David Kilzer  <ddkilzer@apple.com>
 
         WebKit fixes to enable -Wstrict-prototypes for Safari
index 16b17db..e08e417 100644 (file)
@@ -1155,8 +1155,10 @@ void DragController::doImageDrag(Element& element, const IntPoint& dragOrigin, c
     } else {
         if (CachedImage* cachedImage = getCachedImage(element)) {
             dragImage = DragImage { createDragImageIconForCachedImageFilename(cachedImage->response().suggestedFilename()) };
-            if (dragImage)
+            if (dragImage) {
+                dragImage = DragImage { platformAdjustDragImageForDeviceScaleFactor(dragImage.get(), m_page.deviceScaleFactor()) };
                 scaledOrigin = IntPoint(DragIconRightInset - dragImageSize(dragImage.get()).width(), DragIconBottomInset);
+            }
         }
     }