Bug 236188

Summary: [LBSE] Extend overflow/clip rect handling for SVG layers
Product: WebKit Reporter: Nikolas Zimmermann <zimmermann>
Component: SVGAssignee: Nikolas Zimmermann <zimmermann>
Status: RESOLVED FIXED    
Severity: Normal CC: changseok, esprehn+autocc, ews-watchlist, fred.wang, glenn, kondapallykalyan, pdr, rbuis, sabouhallawa, simon.fraser, webkit-bug-importer, zimmermann
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 90738, 236194    
Attachments:
Description Flags
Patch, v1 rbuis: review+

Description Nikolas Zimmermann 2022-02-05 16:24:45 PST
Prepare RenderLayer/RenderLayerBacking for RenderSVGModelObject support:

Allow to re-use overflow clipping logic for certain type of SVG containers, deriving from RenderSVGModelObject, namely: RenderSVGViewportContainer / RenderSVGResourceMarker (RenderSVGRoot uses the same logic, but through RenderReplaced: it doesn't derived from RenderSVGModelObject). Once all things are in place, the SVG overflow logic is gone, replaced in all areas by the shared CSS one.
Comment 1 Nikolas Zimmermann 2022-02-05 16:43:52 PST
Created attachment 451013 [details]
Patch, v1
Comment 2 Rob Buis 2022-02-07 02:09:39 PST
Comment on attachment 451013 [details]
Patch, v1

This could be more efficient in the case LAYER_BASED_SVG_ENGINE is not enabled, but since we want to convert to it given all the benefits I think it is no problem.
Comment 3 Nikolas Zimmermann 2022-02-07 03:33:42 PST
(In reply to Rob Buis from comment #2)
> Comment on attachment 451013 [details]
> Patch, v1
> 
> This could be more efficient in the case LAYER_BASED_SVG_ENGINE is not
> enabled, but since we want to convert to it given all the benefits I think
> it is no problem.

I also thought about caching the 'is<RenderBox>(renderer())' somewhere, but this smells like a pre-mature optimization that looks cheaper on first sight, but without instruction level profiling I wouldn't be on it.
Comment 4 Nikolas Zimmermann 2022-02-07 03:36:50 PST
Committed r289204 (246890@trunk): <https://commits.webkit.org/246890@trunk>
Comment 5 Radar WebKit Bug Importer 2022-02-07 03:37:20 PST
<rdar://problem/88564886>