From de11930c3fecac13bc06da4f8b7818178c63f20e Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Wed, 28 Jun 2017 21:47:18 +0200 Subject: Only create a single display transform for SVG frames with single child transforms. This improves performance on repeated scaling of vectors. --- layout/svg/nsSVGOuterSVGFrame.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'layout/svg/nsSVGOuterSVGFrame.h') diff --git a/layout/svg/nsSVGOuterSVGFrame.h b/layout/svg/nsSVGOuterSVGFrame.h index a08593678..6d29234ac 100644 --- a/layout/svg/nsSVGOuterSVGFrame.h +++ b/layout/svg/nsSVGOuterSVGFrame.h @@ -263,6 +263,9 @@ public: */ virtual nsIAtom* GetType() const override; + bool IsSVGTransformed(Matrix *aOwnTransform, + Matrix *aFromParentTransform) const override; + // nsSVGContainerFrame methods: virtual gfxMatrix GetCanvasTM() override { // GetCanvasTM returns the transform from an SVG frame to the frame's @@ -270,8 +273,6 @@ public: // set on us for any CSS border or padding on our nsSVGOuterSVGFrame. return static_cast(GetParent())->GetCanvasTM(); } - - virtual bool HasChildrenOnlyTransform(Matrix *aTransform) const override; }; #endif -- cgit v1.2.3