[webkit-changes] [WebKit/WebKit] b686ba: [GPU Process] [Filters] Cache the SVGFilter applyi...

Said Abou-Hallawa noreply at github.com
Mon May 15 16:10:33 PDT 2023


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

  Changed paths:
    M Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp
    M Source/WebCore/svg/graphics/filters/SVGFilter.cpp
    M Source/WebCore/svg/graphics/filters/SVGFilter.h
    M Source/WebKit/GPUProcess/graphics/RemoteDisplayListRecorder.cpp
    M Source/WebKit/GPUProcess/graphics/RemoteDisplayListRecorder.h
    M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp

  Log Message:
  -----------
  [GPU Process] [Filters] Cache the SVGFilter applying results in RemoteResourceCache
https://bugs.webkit.org/show_bug.cgi?id=232845
rdar://85426641

Reviewed by Simon Fraser.

This allows caching the results of applying an SVGFilter to a source ImageBuffer
in GPU Process. We should be able to use the cached result if the Filter was not
changed. We should be also able to clear some of the result FilterImages if a
FilterEffect was changed.

* Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::applyResource):
* Source/WebCore/svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::mergeEffects):
* Source/WebCore/svg/graphics/filters/SVGFilter.h:
* Source/WebKit/GPUProcess/graphics/RemoteDisplayListRecorder.cpp:
(WebKit::RemoteDisplayListRecorder::drawFilteredImageBufferInternal):
(WebKit::RemoteDisplayListRecorder::drawFilteredImageBuffer):
* Source/WebKit/GPUProcess/graphics/RemoteDisplayListRecorder.h:
* Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
(WebKit::RemoteDisplayListRecorderProxy::recordDrawFilteredImageBuffer):

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




More information about the webkit-changes mailing list