Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[LBSE] Add RenderSVGResourceClipper #18286

Merged

Conversation

rwlbuis
Copy link
Contributor

@rwlbuis rwlbuis commented Sep 27, 2023

57393b5

[LBSE] Add RenderSVGResourceClipper
https://bugs.webkit.org/show_bug.cgi?id=262191

Reviewed by Nikolas Zimmermann.

Implement the first SVG resource in LBSE: clipping (RenderSVGResourceClipper).
Unlike the legacy engine, LBSE does not make use of temporary ImageBuffers for clipping,
but relies on Porter-Duff DestinationIn/SourceOver compositing operations, to achieve
the same effect, but faster. This aligns SVG clipping with HTML/CSS clipping.

This is only the beginning: dynamic invalidations are not working, as we're introducing
them incrementally in a unified, clean way.

Covered by existing tests (dozens of progressions, see TestExpectations).

* LayoutTests/platform/mac-ventura-wk2-lbse-text/TestExpectations:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-02-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-05-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/painting-marker-02-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-05-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-06-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/batik/text/textEffect2-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/batik/text/textProperties-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/carto.net/textbox-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/embedding-external-svgs-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/path-moveto-only-rendering-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/subpaths-moveto-only-rendering-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/text-clip-expected.png: Added.
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/text-clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/use-on-symbol-inside-pattern-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/filters/filter-clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/foreignObject/clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/repaint/mask-clip-target-transform-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/text/text-align-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/text/text-text-05-t-expected.txt:
* LayoutTests/svg/clip-path/clip-opacity.html:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/dom/TreeScope.cpp:
(WebCore::TreeScope::removeSVGResource):
(WebCore::TreeScope::lookupSVGResourceById const):
(WebCore::TreeScope::lookupLegacySVGResoureById const):
(WebCore::TreeScope::svgResourceById const): Deleted.
* Source/WebCore/dom/TreeScope.h:
* Source/WebCore/rendering/PaintPhase.h:
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::hitTestClipPath const):
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::recursiveUpdateLayerPositions):
(WebCore::RenderLayer::updateAncestorDependentState):
(WebCore::RenderLayer::computeHasVisibleContent const):
(WebCore::RenderLayer::beginTransparencyLayers):
(WebCore::RenderLayer::paintSVGResourceLayer):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::enclosingSVGRootLayer const):
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayer.h:
(WebCore::RenderLayer::isPaintingSVGResourceLayer const):
* Source/WebCore/rendering/RenderLayerInlines.h:
(WebCore::RenderLayer::hasFilter const):
(WebCore::RenderLayer::hasNonOpacityTransparency const):
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::isSVGForeignObject const):
(WebCore::RenderObject::isSVGResourceContainer const):
(WebCore::RenderObject::isLegacySVGResourceClipper const):
(WebCore::RenderObject::isSVGResourceClipper const):
* Source/WebCore/rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* Source/WebCore/rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* Source/WebCore/rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::computeClipPath const):
* Source/WebCore/rendering/svg/RenderSVGModelObject.h:
* Source/WebCore/rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp: Added.
(WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::shouldApplyPathClipping const):
(WebCore::currentClippingMode):
(WebCore::sharedClipAllPath):
(WebCore::RenderSVGResourceClipper::applyPathClipping):
(WebCore::RenderSVGResourceClipper::applyMaskClipping):
(WebCore::RenderSVGResourceClipper::hitTestClipContent):
(WebCore::RenderSVGResourceClipper::resourceBoundingBox):
* Source/WebCore/rendering/svg/RenderSVGResourceClipper.h: Added.
* Source/WebCore/rendering/svg/RenderSVGResourceClipperInlines.h: Added.
(WebCore::RenderSVGResourceClipper::clipPathElement const):
(WebCore::RenderSVGResourceClipper::clipPathUnits const):
* Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
* Source/WebCore/rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintObject):
* Source/WebCore/rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::paint):
* Source/WebCore/rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::paint):
* Source/WebCore/rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paint):
* Source/WebCore/rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::paintSVGClippingMask):
* Source/WebCore/rendering/svg/SVGRenderSupport.h:
* Source/WebCore/rendering/svg/SVGRenderingContext.cpp:
(WebCore::isRenderingMaskImage):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceClipper.cpp:
(WebCore::LegacyRenderSVGResourceClipper::drawContentIntoMaskImage):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceClipper.h:
(isType):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceContainer.h:
(WebCore::getRenderSVGResourceContainerById):
* Source/WebCore/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::createElementRenderer):
(WebCore::SVGClipPathElement::shouldApplyPathClipping const):
* Source/WebCore/svg/SVGClipPathElement.h:
* Source/WebCore/svg/SVGElement.cpp:
(WebCore::isSVGLayerAwareElement):

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

43b2050

Misc iOS, tvOS & watchOS macOS Linux Windows
βœ… πŸ§ͺ style βœ… πŸ›  ios βœ… πŸ›  mac βœ… πŸ›  wpe βœ… πŸ›  wincairo
βœ… πŸ§ͺ bindings βœ… πŸ›  ios-sim βœ… πŸ›  mac-AS-debug βœ… πŸ§ͺ wpe-wk2
βœ… πŸ§ͺ webkitperl βœ… πŸ§ͺ ios-wk2 βœ… πŸ§ͺ api-mac βœ… πŸ›  gtk
  πŸ§ͺ ios-wk2-wpt βœ… πŸ§ͺ mac-wk1 βœ… πŸ§ͺ gtk-wk2
βœ… πŸ§ͺ api-ios βœ… πŸ§ͺ mac-wk2 βœ… πŸ§ͺ api-gtk
βœ… πŸ›  tv βœ… πŸ§ͺ mac-AS-debug-wk2
βœ… πŸ›  tv-sim βœ… πŸ§ͺ mac-wk2-stress
βœ… πŸ›  πŸ§ͺ merge βœ… πŸ›  watch
βœ… πŸ›  watch-sim

@rwlbuis rwlbuis self-assigned this Sep 27, 2023
@rwlbuis rwlbuis added the SVG For bugs in the SVG implementation. label Sep 27, 2023
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 28, 2023
@rwlbuis rwlbuis removed the merging-blocked Applied to prevent a change from being merged label Oct 2, 2023
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from cd13b19 to b27a017 Compare October 2, 2023 11:43
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Oct 2, 2023
@rwlbuis rwlbuis removed the merging-blocked Applied to prevent a change from being merged label Oct 2, 2023
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from b27a017 to 48514c0 Compare October 2, 2023 14:16
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from 48514c0 to cb8eec4 Compare October 3, 2023 13:25
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from cb8eec4 to fe928d8 Compare October 3, 2023 16:23
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Oct 3, 2023
@rwlbuis rwlbuis removed the merging-blocked Applied to prevent a change from being merged label Oct 4, 2023
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from fe928d8 to fa98287 Compare October 4, 2023 08:48
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Oct 4, 2023
@rwlbuis rwlbuis removed the merging-blocked Applied to prevent a change from being merged label Oct 4, 2023
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from fa98287 to eb74c07 Compare October 4, 2023 13:20
@webkit-early-warning-system
Copy link
Collaborator

Starting EWS tests for eb74c07. Live statuses available at the PR page, #18286

@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from eb74c07 to aff0855 Compare October 4, 2023 14:44
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from 4db8c06 to 436b17b Compare October 20, 2023 14:02
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from 436b17b to c489de5 Compare October 20, 2023 15:53
Copy link
Contributor

@nikolaszimmermann nikolaszimmermann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job @rwlbuis - not much left :-) Fortunately the first resource is the worst, the others are much less work....

@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from c489de5 to ce00a1f Compare October 21, 2023 10:22
Copy link
Contributor

@nikolaszimmermann nikolaszimmermann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

r=me, excellent job Rob! I've left another comment, still one thing to fix prior to mq+.

@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from ce00a1f to 3721e21 Compare October 22, 2023 14:38
@rwlbuis rwlbuis force-pushed the eng/Add-RenderSVGResourceClipper branch from 3721e21 to 43b2050 Compare October 22, 2023 15:58
@rwlbuis rwlbuis added the merge-queue Applied to send a pull request to merge-queue label Oct 22, 2023
https://bugs.webkit.org/show_bug.cgi?id=262191

Reviewed by Nikolas Zimmermann.

Implement the first SVG resource in LBSE: clipping (RenderSVGResourceClipper).
Unlike the legacy engine, LBSE does not make use of temporary ImageBuffers for clipping,
but relies on Porter-Duff DestinationIn/SourceOver compositing operations, to achieve
the same effect, but faster. This aligns SVG clipping with HTML/CSS clipping.

This is only the beginning: dynamic invalidations are not working, as we're introducing
them incrementally in a unified, clean way.

Covered by existing tests (dozens of progressions, see TestExpectations).

* LayoutTests/platform/mac-ventura-wk2-lbse-text/TestExpectations:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-02-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-05-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/painting-marker-02-f-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-05-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-06-t-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/batik/text/textEffect2-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/batik/text/textProperties-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/carto.net/textbox-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/embedding-external-svgs-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/path-moveto-only-rendering-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/subpaths-moveto-only-rendering-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/text-clip-expected.png: Added.
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/text-clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/custom/use-on-symbol-inside-pattern-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/filters/filter-clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/foreignObject/clip-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/repaint/mask-clip-target-transform-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/text/text-align-01-b-expected.txt:
* LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/text/text-text-05-t-expected.txt:
* LayoutTests/svg/clip-path/clip-opacity.html:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/dom/TreeScope.cpp:
(WebCore::TreeScope::removeSVGResource):
(WebCore::TreeScope::lookupSVGResourceById const):
(WebCore::TreeScope::lookupLegacySVGResoureById const):
(WebCore::TreeScope::svgResourceById const): Deleted.
* Source/WebCore/dom/TreeScope.h:
* Source/WebCore/rendering/PaintPhase.h:
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::hitTestClipPath const):
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::recursiveUpdateLayerPositions):
(WebCore::RenderLayer::updateAncestorDependentState):
(WebCore::RenderLayer::computeHasVisibleContent const):
(WebCore::RenderLayer::beginTransparencyLayers):
(WebCore::RenderLayer::paintSVGResourceLayer):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::enclosingSVGRootLayer const):
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayer.h:
(WebCore::RenderLayer::isPaintingSVGResourceLayer const):
* Source/WebCore/rendering/RenderLayerInlines.h:
(WebCore::RenderLayer::hasFilter const):
(WebCore::RenderLayer::hasNonOpacityTransparency const):
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::isSVGForeignObject const):
(WebCore::RenderObject::isSVGResourceContainer const):
(WebCore::RenderObject::isLegacySVGResourceClipper const):
(WebCore::RenderObject::isSVGResourceClipper const):
* Source/WebCore/rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* Source/WebCore/rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* Source/WebCore/rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::computeClipPath const):
* Source/WebCore/rendering/svg/RenderSVGModelObject.h:
* Source/WebCore/rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp: Added.
(WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::shouldApplyPathClipping const):
(WebCore::currentClippingMode):
(WebCore::sharedClipAllPath):
(WebCore::RenderSVGResourceClipper::applyPathClipping):
(WebCore::RenderSVGResourceClipper::applyMaskClipping):
(WebCore::RenderSVGResourceClipper::hitTestClipContent):
(WebCore::RenderSVGResourceClipper::resourceBoundingBox):
* Source/WebCore/rendering/svg/RenderSVGResourceClipper.h: Added.
* Source/WebCore/rendering/svg/RenderSVGResourceClipperInlines.h: Added.
(WebCore::RenderSVGResourceClipper::clipPathElement const):
(WebCore::RenderSVGResourceClipper::clipPathUnits const):
* Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
* Source/WebCore/rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintObject):
* Source/WebCore/rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::paint):
* Source/WebCore/rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::paint):
* Source/WebCore/rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paint):
* Source/WebCore/rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::paintSVGClippingMask):
* Source/WebCore/rendering/svg/SVGRenderSupport.h:
* Source/WebCore/rendering/svg/SVGRenderingContext.cpp:
(WebCore::isRenderingMaskImage):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceClipper.cpp:
(WebCore::LegacyRenderSVGResourceClipper::drawContentIntoMaskImage):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceClipper.h:
(isType):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceContainer.h:
(WebCore::getRenderSVGResourceContainerById):
* Source/WebCore/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::createElementRenderer):
(WebCore::SVGClipPathElement::shouldApplyPathClipping const):
* Source/WebCore/svg/SVGClipPathElement.h:
* Source/WebCore/svg/SVGElement.cpp:
(WebCore::isSVGLayerAwareElement):

Canonical link: https://commits.webkit.org/269635@main
@webkit-commit-queue
Copy link
Collaborator

Committed 269635@main (57393b5): https://commits.webkit.org/269635@main

Reviewed commits have been landed. Closing PR #18286 and removing active labels.

@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Oct 22, 2023
@webkit-commit-queue webkit-commit-queue merged commit 57393b5 into WebKit:main Oct 22, 2023
@rwlbuis rwlbuis deleted the eng/Add-RenderSVGResourceClipper branch October 31, 2023 11:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
SVG For bugs in the SVG implementation.
Projects
None yet
5 participants