Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2e6697f25fa78aa53674ff616810fae8e6dc503d
      
https://github.com/WebKit/WebKit/commit/2e6697f25fa78aa53674ff616810fae8e6dc503d
  Author: Said Abou-Hallawa <s...@apple.com>
  Date:   2024-06-19 (Wed, 19 Jun 2024)

  Changed paths:
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/rendering/RenderLayerFilters.cpp
    M Source/WebCore/rendering/RenderLayerModelObject.cpp
    M Source/WebCore/rendering/RenderLayerModelObject.h
    M Source/WebCore/rendering/RenderObject.h
    A Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp
    A Source/WebCore/rendering/svg/RenderSVGResourceFilter.h
    A Source/WebCore/rendering/svg/RenderSVGResourceFilterInlines.h
    A Source/WebCore/rendering/svg/RenderSVGResourceFilterPrimitive.cpp
    A Source/WebCore/rendering/svg/RenderSVGResourceFilterPrimitive.h
    M Source/WebCore/rendering/svg/RenderSVGResourcePaintServer.h
    M Source/WebCore/rendering/svg/SVGBoundingBoxComputation.cpp
    M Source/WebCore/rendering/svg/SVGRenderTreeAsText.cpp
    M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilter.cpp
    M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilter.h
    M 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.cpp
    M 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h
    M Source/WebCore/rendering/svg/legacy/SVGResourcesCache.cpp
    M Source/WebCore/svg/SVGElement.cpp
    M Source/WebCore/svg/SVGFEConvolveMatrixElement.cpp
    M Source/WebCore/svg/SVGFEDiffuseLightingElement.cpp
    M Source/WebCore/svg/SVGFEDropShadowElement.cpp
    M Source/WebCore/svg/SVGFEGaussianBlurElement.cpp
    M Source/WebCore/svg/SVGFELightElement.cpp
    M Source/WebCore/svg/SVGFEMorphologyElement.cpp
    M Source/WebCore/svg/SVGFESpecularLightingElement.cpp
    M Source/WebCore/svg/SVGFilterElement.cpp
    M Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp
    M Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h

  Log Message:
  -----------
  [LBSE] Implement support for filters
https://bugs.webkit.org/show_bug.cgi?id=265140
rdar://118834403

Reviewed by Nikolas Zimmermann.

Implement support for filters, based on the new paint server logic. The SVG
<filter> element will be handled as CSS filter with one 
ReferenceFilterOperation.

In future patches, the geometry of CSSFilter will be similar to the geometry of
the current SVGFilter.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/rendering/RenderLayerFilters.cpp:
(WebCore::RenderLayerFilters::beginFilterEffect):
* Source/WebCore/rendering/RenderLayerModelObject.cpp:
(WebCore::RenderLayerModelObject::svgFilterResourceFromStyle const):
* Source/WebCore/rendering/RenderLayerModelObject.h:
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::isRenderSVGHiddenContainer const):
(WebCore::RenderObject::isLegacyRenderSVGResourceFilter const):
(WebCore::RenderObject::isRenderSVGResourcePaintServer const):
(WebCore::RenderObject::isLegacyRenderSVGResourceFilterPrimitive const):
(WebCore::RenderObject::isRenderOrLegacyRenderSVGResourceFilterPrimitive const):
* Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp: Copied from 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h.
(WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter):
(WebCore::RenderSVGResourceFilter::resourceBoundingBox):
(WebCore::RenderSVGResourceFilter::invalidateFilter):
* Source/WebCore/rendering/svg/RenderSVGResourceFilter.h: Copied from 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h.
* Source/WebCore/rendering/svg/RenderSVGResourceFilterInlines.h: Added.
(WebCore::RenderSVGResourceFilter::filterElement const):
(WebCore::RenderSVGResourceFilter::protectedFilterElement const):
(WebCore::RenderSVGResourceFilter::filterUnits const):
(WebCore::RenderSVGResourceFilter::primitiveUnits const):
* Source/WebCore/rendering/svg/RenderSVGResourceFilterPrimitive.cpp: Copied 
from 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h.
(WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
(WebCore::RenderSVGResourceFilterPrimitive::markFilterEffectForRepaint):
(WebCore::RenderSVGResourceFilterPrimitive::markFilterEffectForRebuild):
* Source/WebCore/rendering/svg/RenderSVGResourceFilterPrimitive.h: Copied from 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h.
* Source/WebCore/rendering/svg/RenderSVGResourcePaintServer.h:
(WebCore::RenderSVGResourcePaintServer::prepareFillOperation):
(WebCore::RenderSVGResourcePaintServer::prepareStrokeOperation):
* Source/WebCore/rendering/svg/SVGBoundingBoxComputation.cpp:
(WebCore::SVGBoundingBoxComputation::adjustBoxForClippingAndEffects const):
* Source/WebCore/rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeSVGContainer):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilter.cpp:
(WebCore::LegacyRenderSVGResourceFilter::LegacyRenderSVGResourceFilter):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilter.h:
(isType):
* 
Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.cpp:
(WebCore::LegacyRenderSVGResourceFilterPrimitive::LegacyRenderSVGResourceFilterPrimitive):
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceFilterPrimitive.h:
* Source/WebCore/rendering/svg/legacy/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::clientStyleChanged):
* Source/WebCore/svg/SVGElement.cpp:
(WebCore::isSVGLayerAwareElement):
* Source/WebCore/svg/SVGFEConvolveMatrixElement.cpp:
* Source/WebCore/svg/SVGFEDiffuseLightingElement.cpp:
* Source/WebCore/svg/SVGFEDropShadowElement.cpp:
* Source/WebCore/svg/SVGFEGaussianBlurElement.cpp:
* Source/WebCore/svg/SVGFELightElement.cpp:
(WebCore::SVGFELightElement::svgAttributeChanged):
* Source/WebCore/svg/SVGFEMorphologyElement.cpp:
* Source/WebCore/svg/SVGFESpecularLightingElement.cpp:
* Source/WebCore/svg/SVGFilterElement.cpp:
(WebCore::SVGFilterElement::childrenChanged):
(WebCore::SVGFilterElement::createElementRenderer):
* Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp:
(WebCore::SVGFilterPrimitiveStandardAttributes::primitiveAttributeChanged):
(WebCore::SVGFilterPrimitiveStandardAttributes::primitiveAttributeOnChildChanged):
(WebCore::SVGFilterPrimitiveStandardAttributes::markFilterEffectForRepaint):
(WebCore::SVGFilterPrimitiveStandardAttributes::markFilterEffectForRebuild):
(WebCore::SVGFilterPrimitiveStandardAttributes::createElementRenderer):
(WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilterPrimitiveParent):
* Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h:

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



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

Reply via email to