[webkit-reviews] review granted: [Bug 205200] Implement encoding/decoding for DisplayList::DrawNativeImage : [Attachment 385580] Fix GTK/WPE

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Dec 13 10:15:36 PST 2019


Simon Fraser (smfr) <simon.fraser at apple.com> has granted Wenson Hsieh
<wenson_hsieh at apple.com>'s request for review:
Bug 205200: Implement encoding/decoding for DisplayList::DrawNativeImage
https://bugs.webkit.org/show_bug.cgi?id=205200

Attachment 385580: Fix GTK/WPE

https://bugs.webkit.org/attachment.cgi?id=385580&action=review




--- Comment #3 from Simon Fraser (smfr) <simon.fraser at apple.com> ---
Comment on attachment 385580
  --> https://bugs.webkit.org/attachment.cgi?id=385580
Fix GTK/WPE

View in context: https://bugs.webkit.org/attachment.cgi?id=385580&action=review

> Source/WebKit/ChangeLog:10
> +	   Add helper functions to encode and decode NativeImagePtr
(RetainPtr<CGImageRef> on Cocoa platforms). This
> +	   mirrors the implementation of encoding and decoding for
WebCore::Image, which create and draws into
> +	   ShareableBitmap, and send a handle to the data over IPC.

I think we should try to remove drawNativeImage. Here you're forced to call
into CG in the web process, and we're trying to avoid that in general.

> Source/WebCore/platform/graphics/displaylists/DisplayListItems.h:1384
> +    Optional<FloatRect> destination;

destinationRect

> Source/WebKit/Shared/WebCoreArgumentCoders.cpp:1050
> +    if (graphicsContext)
> +	   graphicsContext->drawNativeImage(image, { }, FloatRect({ },
imageSize), FloatRect({ }, imageSize));

If we fail to make a graphicsContext shouldn't the encoding fail?


More information about the webkit-reviews mailing list