tree c0836622f9af23bc64a781b2269c50a6ac47d3c9
parent 3003994e4b87a20d7b98a0199855c5ab2d7999e9
author wenson_hsieh@apple.com <wenson_hsieh@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc> 1574748538 +0000
committer wenson_hsieh@apple.com <wenson_hsieh@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc> 1574748538 +0000

[macOS] Dragged images are only available as .tiff when dropping onto macCatalyst apps
https://bugs.webkit.org/show_bug.cgi?id=204598
<rdar://problem/57093920>

Reviewed by Tim Horton.

Source/WebKit:

On macOS, writing dragged images to the pasteboard only as file promises is mostly sufficient for the purposes
of dropping into Finder, Photos, and other apps. However, when dropping into a macCatalyst app, the contents of
NSPasteboard will only contain a file URL, which most Catalyst apps aren't able to handle. The only other valid
image representation that is written to the pasteboard in this case is "public.tiff", which loses fidelity in
the case of animated GIFs.

Instead, if the dragged image has a corresponding UTI and corresponding decoded image data, declare the UTI when
writing promised data to the pasteboard, and later provide data for the UTI, if the drop destination asks, by
using the promised image's data.

Test: DragAndDropTests.ProvideImageDataAsTypeIdentifiers

* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setPromisedDataForImage):
(WebKit::WebViewImpl::provideDataForPasteboard):

Tools:

Verify that WKWebView is able to provide data in non-TIFF formats when dragging several types of images using a
new API test.

* TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:


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