Forbid setDragImage after dragstart
[WebKit-https.git] / Source / WebCore / ChangeLog
index 88e3a5806820f8a3aca7751862c52a8830406486..5a9cf97901f93f3267ac6a8a9778ec0029d54ce4 100644 (file)
@@ -1,3 +1,31 @@
+2017-08-18  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Forbid setDragImage after dragstart
+        https://bugs.webkit.org/show_bug.cgi?id=175751
+
+        Reviewed by Wenson Hsieh.
+
+        Removed the code to allow setting the drag mage after dragstart had happened.
+
+        The feature was apparently used in Mac WebKit1 port but using it today causes the drag image
+        to disapepar while the user is moving the mouse cursor and being drawn once it's stopped
+        and results in the contionus flickering of the drag image.
+
+        The feaure was never supported in WebKit2 and doesn't match the HTML5 specification:
+        https://html.spec.whatwg.org/multipage/dnd.html#concept-dnd-rw
+        https://html.spec.whatwg.org/multipage/dnd.html#dom-datatransfer-setdragimage
+        or the behaviors of other browsers such as Chrome and Firefox.
+
+        No new tests. This patch simply removes code.
+
+        * dom/DataTransfer.cpp:
+        (WebCore::DataTransfer::setDragImage):
+        (WebCore::DataTransfer::canSetDragImage const): Deleted.
+        * dom/DataTransfer.h:
+        (WebCore::DataTransfer::makeDragImageWritable): Deleted.
+        * page/EventHandler.cpp:
+        (WebCore::EventHandler::handleDrag):
+
 2017-08-18  Sam Weinig  <sam@webkit.org>
 
         [WebCrypto] Get rid of CryptoKeyData class and all its subclasses