[webkit-changes] [WebKit/WebKit] b86011: [GPU Process][Filters] Top level SVGFilter should ...

Said Abou-Hallawa noreply at github.com
Thu May 11 18:50:53 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b860110f0ae42268a9e9aac5975dd6881c866fc7
      https://github.com/WebKit/WebKit/commit/b860110f0ae42268a9e9aac5975dd6881c866fc7
  Author: Said Abou-Hallawa <said at apple.com>
  Date:   2023-05-11 (Thu, 11 May 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/filters/FilterResults.h
    M Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp
    M Source/WebCore/rendering/svg/RenderSVGResourceFilter.h
    M Source/WebCore/svg/graphics/filters/SVGFilter.cpp
    M Source/WebCore/svg/graphics/filters/SVGFilter.h

  Log Message:
  -----------
  [GPU Process][Filters] Top level SVGFilter should own its FilterResults
https://bugs.webkit.org/show_bug.cgi?id=256535
rdar://109107572

Reviewed by Simon Fraser.

This allows caching the FilterResults along with the SVGFilter in RemoteResourceCache.

SVGFilter::ensureResults() returns FilterResults& but it takes FilterResultsCreator.
FilterResultsCreator returns a std::unique_ptr<FilterResults> which SVGFilter
will maintain.

* Source/WebCore/platform/graphics/filters/FilterResults.h:
* Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::applyResource):
(WebCore::RenderSVGResourceFilter::markFilterForRepaint):
* Source/WebCore/rendering/svg/RenderSVGResourceFilter.h:
* Source/WebCore/svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::ensureResults):
(WebCore::SVGFilter::clearEffectResult):
* Source/WebCore/svg/graphics/filters/SVGFilter.h:

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




More information about the webkit-changes mailing list