gecko-dev/layout/svg
cku 66ee16b6b0 Bug 1224207 - Part 7. (Main) Pass frame transform info down to nsFilterInstance. r=mstange
The biggest change is located in
nsFilterInstance::ComputeUserSpaceToFilterSpaceScale.

Originally, nsSVGUtils::GetCanvasTM is used. This function returns combination
of svg-transform, e.g. <rect transform="translate(30,40)" />, and
css-to-dev-scale-transform. That why we do not see this bug in a transformed
svg element.

For example, the following svg can be rendered correctly on FF:
<svg xmlns="http://www.w3.org/2000/svg">
<defs>
  <filter id="blurMe">
    <feGaussianBlur in="SourceGraphic" stdDeviation="1"/>
  </filter>
</defs>
  <!-- nsSVGUtils::GetCanvasTM return transform="scale(3)" correctly -->
  <text x="0" y="35" font-size="35" transform="scale(3)" filter="url(#blurMe)">
    Hello, out there
  </text>
</svg>

Unfortunately, this function does not report css-transform at all. So, I
replaced it by mPaintTransfom, which is passed from the caller. So now it's the
caller's responsibility to pass a UserSpace-To-DeviceSpace transform into
nsFilterInstance. And, we actually change the meaning of mPaintTransform in this
patch. Before this patch, mPaintTransform means css-to-dev-px scaling transform;
After this patch it means "userspace-to-filterspace-scaling * css-to-dev-scaling"
transform.

All the other modifictions are to respect the change in
nsFilterInstance::ComputeUserSpaceToFilterSpaceScale.

MozReview-Commit-ID: LwNUAMo98M

--HG--
extra : rebase_source : 4ed9fbd1493decef43b6d606d78c4dd23e975146
2017-02-07 11:51:34 +08:00
..
crashtests Bug 1324647 - stylo: Downgrade "Need to flush before destroying!" assertion since it occurs frequently. r=me 2017-01-31 15:10:45 +08:00
tests Bug 1333164 - fix invalid references to mochitest stylesheet, r=erahm 2017-01-24 14:24:04 +00:00
AutoReferenceLimiter.h
moz.build Bug 1058040, part 10 - Allow SVGImageContext to store an SVGContextPaint and have VectorImage propagate it. r=dholbert 2017-01-11 01:48:29 +00:00
nsCSSClipPathInstance.cpp Bug 1326406 Part 2 - Extract the computation of ellipse radii as ComputeEllipseRadii(). r=dbaron 2017-01-23 17:17:05 +08:00
nsCSSClipPathInstance.h Bug 1311270 - Part 1. Move geomery box computing from nsCSSClipPathInstance to nsLayoutUtils. 2016-11-22 11:19:11 +08:00
nsCSSFilterInstance.cpp Bug 1307740 - Properly handle filter input tainting with CSS filters and multiple filters. r=jwatt 2016-10-19 11:32:02 -04:00
nsCSSFilterInstance.h Bug 1307740 - Properly handle filter input tainting with CSS filters and multiple filters. r=jwatt 2016-10-19 11:32:02 -04:00
nsFilterInstance.cpp Bug 1224207 - Part 7. (Main) Pass frame transform info down to nsFilterInstance. r=mstange 2017-02-07 11:51:34 +08:00
nsFilterInstance.h Bug 1224207 - Part 7. (Main) Pass frame transform info down to nsFilterInstance. r=mstange 2017-02-07 11:51:34 +08:00
nsISVGChildFrame.h Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsISVGSVGFrame.h
nsSVGAFrame.cpp Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
nsSVGClipPathFrame.cpp Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGClipPathFrame.h Bug 1321056: Add includes/namespaces to fix latent unified bustage in layout/svg. r=TYLin 2016-11-29 11:41:16 -08:00
nsSVGContainerFrame.cpp Bug 1321056: Add includes/namespaces to fix latent unified bustage in layout/svg. r=TYLin 2016-11-29 11:41:16 -08:00
nsSVGContainerFrame.h Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsSVGEffects.cpp Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGEffects.h Bug 1323157 - Rename HasNoFilterOrHasValidFilter as HasNoOrValidFilter. r=longsonr+218550 2016-12-13 19:40:27 +08:00
nsSVGFilterFrame.cpp Bug 1245751 - Part 4: Allow href without xlink on SVG <filter> elements. r=jwatt 2016-07-05 18:18:51 +08:00
nsSVGFilterFrame.h
nsSVGFilterInstance.cpp Bug 1321056: Add includes/namespaces to fix latent unified bustage in layout/svg. r=TYLin 2016-11-29 11:41:16 -08:00
nsSVGFilterInstance.h Bug 1307740 - Properly handle filter input tainting with CSS filters and multiple filters. r=jwatt 2016-10-19 11:32:02 -04:00
nsSVGFilterPaintCallback.h Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsSVGForeignObjectFrame.cpp Bug 1058040, part 1 - Move gfxTextContextPaint to a separate file to enable use in imagelib. r=dholbert 2016-07-22 12:07:39 +01:00
nsSVGForeignObjectFrame.h Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron 2016-07-21 18:36:39 +08:00
nsSVGGenericContainerFrame.cpp
nsSVGGenericContainerFrame.h
nsSVGGFrame.cpp
nsSVGGFrame.h Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
nsSVGGradientFrame.cpp Bug 1245751 - Part 10: Allow href without xlink on SVG Gradient elements. r=jwatt 2016-07-07 14:26:57 +08:00
nsSVGGradientFrame.h
nsSVGImageFrame.cpp Bug 1058040, part 11 - Convert DrawImage/DrawImageInternal's SVGImageContext param from pointer to Maybe<>. r=dholbert 2017-01-11 01:48:29 +00:00
nsSVGInnerSVGFrame.cpp Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsSVGInnerSVGFrame.h Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsSVGIntegrationUtils.cpp Bug 1224207 - Part 7. (Main) Pass frame transform info down to nsFilterInstance. r=mstange 2017-02-07 11:51:34 +08:00
nsSVGIntegrationUtils.h Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
nsSVGMarkerFrame.cpp Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGMarkerFrame.h Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGMaskFrame.cpp Bug 1325865 - Part 1. Remove double transform. r=longsonr+218550 2017-01-13 17:02:09 +08:00
nsSVGMaskFrame.h Bug 1314536 - Part 1. Implement/use nsSVGMaskFrame::MaskParams and add a test case for nested mask-mode usage in SVG mask. r=mstange 2016-11-16 12:59:52 +08:00
nsSVGMaskFrameNEON.cpp
nsSVGMaskFrameNEON.h
nsSVGOuterSVGFrame.cpp Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
nsSVGOuterSVGFrame.h Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron 2016-07-21 18:36:39 +08:00
nsSVGPaintServerFrame.h
nsSVGPatternFrame.cpp Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGPatternFrame.h Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
nsSVGStopFrame.cpp
nsSVGSwitchFrame.cpp Bug 1258510 - Part 2. Use the return value of nsLayoutUtils::DrawSingleImage & DrawSingleUnscaledImage. r=mstange 2016-07-14 12:47:06 +08:00
nsSVGUseFrame.cpp Bug 1245751 - Part 2: Allow href without xlink on SVG <use> elements. r=jwatt 2016-07-05 16:37:17 +08:00
nsSVGUtils.cpp Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
nsSVGUtils.h Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
svg.css Bug 843579 - Unprefix -moz-any-link. r=bz 2016-07-19 23:13:13 -04:00
SVGContextPaint.cpp Bug 1058040, part 9 - Add an SVGContextPaint subclass for inheriting context paint into SVG-as-an-image. r=dholbert 2017-01-10 10:28:11 +00:00
SVGContextPaint.h Bug 1058040, part 9 - Add an SVGContextPaint subclass for inheriting context paint into SVG-as-an-image. r=dholbert 2017-01-10 10:28:11 +00:00
SVGFEContainerFrame.cpp
SVGFEImageFrame.cpp Bug 1284350. Backed out changeset 69abdc731a99 (Bug 1261554 (Part 1) - Prepare for implementing in-displayport visibility tracking. r=mstange) 2016-09-12 00:19:08 -05:00
SVGFELeafFrame.cpp
SVGFEUnstyledLeafFrame.cpp
SVGGeometryFrame.cpp Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
SVGGeometryFrame.h Bug 1239100 - Implement SVGGeometryElement interface. r=cam r=peterv 2016-12-18 11:11:47 +00:00
SVGImageContext.cpp Bug 1058040, part 10 - Allow SVGImageContext to store an SVGContextPaint and have VectorImage propagate it. r=dholbert 2017-01-11 01:48:29 +00:00
SVGImageContext.h Bug 1058040, part 11 - Convert DrawImage/DrawImageInternal's SVGImageContext param from pointer to Maybe<>. r=dholbert 2017-01-11 01:48:29 +00:00
SVGTextFrame.cpp Bug 1224207 - Part 6. Move GetCSSPxToDevPxMatrix to nsSVGUtils. r=mstange 2017-01-24 23:22:43 +08:00
SVGTextFrame.h Bug 1316556 - Remove zeroing allocation in class nsIPresShell. r=dbaron. 2016-12-01 09:06:50 +01:00
SVGViewFrame.cpp