Summary: | SVG feDropShadow implementation of SVG Filters 1.2 | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Dirk Schulze <krit> | ||||||||||||
Component: | SVG | Assignee: | Nobody <webkit-unassigned> | ||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||
Severity: | Normal | CC: | abarth, dino, eric, gustavo, simon.fraser, webkit-ews, webkit.review.bot, xan.lopez, zimmermann | ||||||||||||
Priority: | P2 | ||||||||||||||
Version: | 528+ (Nightly build) | ||||||||||||||
Hardware: | PC | ||||||||||||||
OS: | OS X 10.5 | ||||||||||||||
Attachments: |
|
Description
Dirk Schulze
2011-01-15 11:54:28 PST
Created attachment 79074 [details]
Patch
I added this patch for discussion. Attachment 79074 [details] did not build on qt: Build output: http://queues.webkit.org/results/7584083 Created attachment 79078 [details]
Patch
Fix for Gtk and Qt. Patch applies nicely to Mac, the bots should get updated more regularly. Attachment 79078 [details] did not build on gtk: Build output: http://queues.webkit.org/results/7569176 SVG 1.2 scares me. :) (In reply to comment #7) > SVG 1.2 scares me. :) Actually it's SVG Filter 1.2, and will be a submodule of SVG 2 ;-) Comment on attachment 79078 [details]
Patch
Clearing review flag after talking with Simon. ContextShadow should be land in a different patch.
Created attachment 90363 [details]
Patch
Comment on attachment 90363 [details] Patch Clearing flags on attachment: 90363 Committed r84410: <http://trac.webkit.org/changeset/84410> All reviewed patches have been landed. Closing bug. Landed preparation patch. Going on with feDropShadow now. Created attachment 90515 [details]
Patch
(In reply to comment #14) > Created an attachment (id=90515) [details] > Patch The patch itself is not that big. But I attached the images of the pixel tests. Don't be afraid. Comment on attachment 90515 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=90515&action=review Patch looks great, one problem though leading to r-: > Source/WebCore/svg/SVGFEDropShadowElement.cpp:130 > + RefPtr<RenderStyle> filterStyle = styleForRenderer(); styleForRenderer()? SVGFEDropShadowElement has it's own renderer through SVGFilterPrimitiveStandardAttributes. You have to ask your renderer for the style, don't do manual style resolution! (I guess you copied that from another wrong SVGFE* Element?) Created attachment 90524 [details]
Patch
(In reply to comment #16) > (I guess you copied that from another wrong SVGFE* Element?) It has historical reasons why other SVGFE*Elements don't call the renderer. They didn't have renderers at the beginning. I'll fix the other elements in another bug report. Comment on attachment 90524 [details]
Patch
Looks great, r=me. Note ASSERT(renderer->style()->svgStyle()); this is always true, as the svgStyle gets created.
Make sure it builds before landing though, as discussed on IRC :-)
Committed r84522: <http://trac.webkit.org/changeset/84522> http://trac.webkit.org/changeset/84522 might have broken Qt Linux ARMv7 Release, Qt Windows 32-bit Release, and Qt Windows 32-bit Debug Committed r84530: <http://trac.webkit.org/changeset/84530> Committed r84537: <http://trac.webkit.org/changeset/84537> Committed r84541: <http://trac.webkit.org/changeset/84541> The new ShadowBlur code fails to handle vertical or horizontal radii of 0. I guess this wasn't tested? Bug 59710. |