RESOLVED FIXED 236573
[GPU Process] Make SVGFEImageElement::filterEffect() create an ImageBuffer compatible with the destination GraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=236573
Summary [GPU Process] Make SVGFEImageElement::filterEffect() create an ImageBuffer co...
Said Abou-Hallawa
Reported 2022-02-13 15:56:04 PST
This requires passing a GraphicsContext to SVGFilter::create() and CSSFilter::create(). This already can be done for SVGFilter since it is created in RenderSVGResourceFilter::applyResource(). But creating the CSSFilter is a little problematic.
Attachments
Patch (61.25 KB, patch)
2022-04-04 22:02 PDT, Said Abou-Hallawa
simon.fraser: review+
Patch (64.68 KB, patch)
2022-04-06 12:37 PDT, Said Abou-Hallawa
no flags
Radar WebKit Bug Importer
Comment 1 2022-02-20 15:57:17 PST
Said Abou-Hallawa
Comment 2 2022-04-04 22:02:39 PDT
Simon Fraser (smfr)
Comment 3 2022-04-05 12:34:00 PDT
Comment on attachment 456668 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=456668&action=review > Source/WebCore/rendering/CSSFilter.cpp:259 > +static RefPtr<SVGFilter> createReferenceFilter(CSSFilter& filter, const ReferenceFilterOperation& filterOperation, RenderElement& renderer, const FloatRect& targetBoundingBox, const GraphicsContext& context) Can we all it "destinationContext" to avoid any ambiguity with contexts related to the filter's internal buffers. > Source/WebCore/rendering/CSSFilter.cpp:271 > +bool CSSFilter::buildFilterFunctions(RenderElement& renderer, const FilterOperations& operations, const FloatRect& targetBoundingBox, const GraphicsContext& context) Ditto
Said Abou-Hallawa
Comment 4 2022-04-06 12:37:53 PDT
EWS
Comment 5 2022-04-06 15:42:50 PDT
Committed r292512 (249354@main): <https://commits.webkit.org/249354@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 456850 [details].
Note You need to log in before you can comment on or make changes to this bug.