Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 39a1301aaed15fb1767b40c7f8fbb375649525b0
      
https://github.com/WebKit/WebKit/commit/39a1301aaed15fb1767b40c7f8fbb375649525b0
  Author: Kimmo Kinnunen <[email protected]>
  Date:   2025-09-22 (Mon, 22 Sep 2025)

  Changed paths:
    M Source/WebCore/platform/graphics/Pattern.h
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.cpp
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.h
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.messages.in
    M Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextProxy.cpp

  Log Message:
  -----------
  GPUP: Add separate state setters for pattern with NativeImages and 
ImageBuffers
https://bugs.webkit.org/show_bug.cgi?id=298858
rdar://160599397

Reviewed by Simon Fraser.

Sending SourceImage as a message is problematic because it contains
NativeImage or ImageBuffer reference. These references must be resolved
statefully through RemoteRenderingBackend, but IPC decoding cannot do
that. The send of SourceImage cannot really be received as SourceImage.
This is currently worked around by adding RenderingResourceIdentifier
as the third variant in SourceImage. This complicates the implementation
with redundant ASSERT_NOT_REACHED() paths.

Remove few uses of SourceImage in the encode/decode part and use
explicit identifiers. This is working towards being able to identify
NativeImages and ImageBuffers in type-safe manner.

* Source/WebCore/platform/graphics/Pattern.h:
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.cpp:
(WebKit::RemoteGraphicsContext::setFillPatternNativeImage):
(WebKit::RemoteGraphicsContext::setFillPatternImageBuffer):
(WebKit::RemoteGraphicsContext::setStrokePatternNativeImage):
(WebKit::RemoteGraphicsContext::setStrokePatternImageBuffer):
(WebKit::RemoteGraphicsContext::setFillPattern): Deleted.
(WebKit::RemoteGraphicsContext::setStrokePattern): Deleted.
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.h:
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.messages.in:
* Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextProxy.cpp:
(WebKit::RemoteGraphicsContextProxy::appendStateChangeItemIfNecessary):

Canonical link: https://commits.webkit.org/300330@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to