Bug 33108

Summary: SVG and -webkit-shadow is broken
Product: WebKit Reporter: Nikolas Zimmermann <zimmermann>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin, krit
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   

Description Nikolas Zimmermann 2010-01-02 11:11:46 PST
Since the last round of repaintRect fixes (SVG now correctly calculates repaint rects), the webkit-shadow CSS stuff mixed with SVG is broken.
You have to run "run-webkit-tests --tolerance 0 -p svg" in order to see the differences, as they're below our default tolerance of 1%.

I guess the shadowRect calculation in SVGRenderSupport.cpp, prepareToRenderSVGContent() is off. CC'ing Beth as she's the original author.
Comment 1 Dirk Schulze 2010-01-02 11:19:50 PST
(In reply to comment #0)
> Since the last round of repaintRect fixes (SVG now correctly calculates repaint
> rects), the webkit-shadow CSS stuff mixed with SVG is broken.
> You have to run "run-webkit-tests --tolerance 0 -p svg" in order to see the
> differences, as they're below our default tolerance of 1%.
> 
> I guess the shadowRect calculation in SVGRenderSupport.cpp,
> prepareToRenderSVGContent() is off. CC'ing Beth as she's the original author.

The latest patches on repaintRect fixes some shadow examples. The remaining failures were introduced with the new Transparencylayer in SVGRenderSupport. I agree Niko, the size of the clipping rect in seems to be wrong.
Also the shadow size is not respected, if the opacity is < 1. The clipping rect gets smaller.
Comment 2 Dirk Schulze 2010-01-15 10:31:22 PST
Fixed in one of the last revisions.