Last Comment Bug 769970 - Get SVG patterns working under HTML elements with CSS transforms applied
: Get SVG patterns working under HTML elements with CSS transforms applied
: perf
Product: Core
Classification: Components
Component: SVG (show other bugs)
: Trunk
: All All
-- normal (vote)
: mozilla16
Assigned To: Jonathan Watt [:jwatt]
: Jet Villegas (:jet)
Depends on:
Blocks: 614732
  Show dependency treegraph
Reported: 2012-06-30 17:15 PDT by Jonathan Watt [:jwatt]
Modified: 2012-07-14 10:03 PDT (History)
3 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

patch (19.88 KB, patch)
2012-07-13 06:53 PDT, Jonathan Watt [:jwatt]
roc: review+
Details | Diff | Splinter Review

Description User image Jonathan Watt [:jwatt] 2012-06-30 17:15:53 PDT
Along the lines of bug 769103, SVG patterns don't account for transforms that are already applied to the gfxContext that is being painting to. For elements that are under a CSS transform that's scales the element up, this means that we create surfaces that are too small (or, more to the point, surfaces that don't have enough resolution) when creating patterns. As a result, the more the element is scaled up, the more pixelated the pattern becomes.

This isn't generally a problem for SVG, since the transforms aren't accumulated on the gfxMatrix as we descend down the tree. However, when switching to display list painting of SVG, we do accumulate the transforms as we descend the tree, and this bug causes various SVG reftests to fail.
Comment 1 User image Jonathan Watt [:jwatt] 2012-07-13 06:53:02 PDT
Created attachment 641854 [details] [diff] [review]
Comment 3 User image Ryan VanderMeulen [:RyanVM] 2012-07-14 10:03:28 PDT

Note You need to log in before you can comment on or make changes to this bug.