[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