author | Daniel Holbert <dholbert@cs.stanford.edu> |
Tue, 29 Nov 2016 11:41:16 -0800 | |
changeset 324806 | 9953c71eb9ba58bbfe818e2fae47ac44f9e868e2 |
parent 324805 | 7a1bee2d23ac31bc03ed9742abf881a50cbbf580 |
child 324807 | e274953486641dbfe3425d2a855537da6aae0304 |
push id | 34817 |
push user | dholbert@mozilla.com |
push date | Wed, 30 Nov 2016 19:48:45 +0000 |
treeherder | autoland@9953c71eb9ba [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | TYLin |
bugs | 1321056 |
milestone | 53.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/layout/svg/SVGTextFrame.cpp +++ b/layout/svg/SVGTextFrame.cpp @@ -32,16 +32,17 @@ #include "mozilla/dom/SVGRect.h" #include "nsSVGIntegrationUtils.h" #include "nsSVGUtils.h" #include "nsTArray.h" #include "nsTextFrame.h" #include "nsTextNode.h" #include "SVGAnimatedNumberList.h" #include "SVGContentUtils.h" +#include "SVGContextPaint.h" #include "SVGLengthList.h" #include "SVGNumberList.h" #include "SVGPathElement.h" #include "SVGTextPathElement.h" #include "nsLayoutUtils.h" #include "nsFrameSelection.h" #include "nsStyleStructInlines.h" #include <algorithm>
--- a/layout/svg/nsCSSClipPathInstance.cpp +++ b/layout/svg/nsCSSClipPathInstance.cpp @@ -3,24 +3,29 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ // Main header first: #include "nsCSSClipPathInstance.h" #include "gfx2DGlue.h" #include "gfxPlatform.h" +#include "mozilla/dom/SVGSVGElement.h" #include "mozilla/gfx/2D.h" #include "mozilla/gfx/PathHelpers.h" #include "nsCSSRendering.h" #include "nsIFrame.h" #include "nsRenderingContext.h" #include "nsRuleNode.h" +#include "nsSVGElement.h" +#include "nsSVGUtils.h" +#include "nsSVGViewBox.h" using namespace mozilla; +using namespace mozilla::dom; using namespace mozilla::gfx; /* static*/ void nsCSSClipPathInstance::ApplyBasicShapeClip(gfxContext& aContext, nsIFrame* aFrame) { auto& clipPathStyle = aFrame->StyleSVGReset()->mClipPath;
--- a/layout/svg/nsFilterInstance.cpp +++ b/layout/svg/nsFilterInstance.cpp @@ -5,16 +5,17 @@ // Main header first: #include "nsFilterInstance.h" // MFBT headers next: #include "mozilla/UniquePtr.h" // Keep others in (case-insensitive) order: +#include "DrawResult.h" #include "gfx2DGlue.h" #include "gfxContext.h" #include "gfxPlatform.h" #include "gfxUtils.h" #include "mozilla/gfx/Helpers.h" #include "mozilla/gfx/PatternHelpers.h" #include "nsISVGChildFrame.h" #include "nsCSSFilterInstance.h" @@ -23,16 +24,17 @@ #include "nsSVGUtils.h" #include "SVGContentUtils.h" #include "FilterSupport.h" #include "gfx2DGlue.h" using namespace mozilla; using namespace mozilla::dom; using namespace mozilla::gfx; +using namespace mozilla::image; FilterDescription nsFilterInstance::GetFilterDescription(nsIContent* aFilteredElement, const nsTArray<nsStyleFilter>& aFilterChain, bool aFilterInputIsTainted, const UserSpaceMetrics& aMetrics, const gfxRect& aBBox, nsTArray<RefPtr<SourceSurface>>& aOutAdditionalImages)
--- a/layout/svg/nsSVGClipPathFrame.cpp +++ b/layout/svg/nsSVGClipPathFrame.cpp @@ -2,27 +2,29 @@ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ // Main header first: #include "nsSVGClipPathFrame.h" // Keep others in (case-insensitive) order: +#include "DrawResult.h" #include "gfxContext.h" #include "mozilla/dom/SVGClipPathElement.h" #include "nsGkAtoms.h" #include "nsSVGEffects.h" #include "nsSVGPathGeometryElement.h" #include "nsSVGPathGeometryFrame.h" #include "nsSVGUtils.h" using namespace mozilla; using namespace mozilla::dom; using namespace mozilla::gfx; +using namespace mozilla::image; // Arbitrary number #define MAX_SVG_CLIP_PATH_REFERENCE_CHAIN_LENGTH int16_t(512) //---------------------------------------------------------------------- // Implementation nsIFrame*
--- a/layout/svg/nsSVGClipPathFrame.h +++ b/layout/svg/nsSVGClipPathFrame.h @@ -150,18 +150,18 @@ public: */ gfxMatrix GetClipPathTransform(nsIFrame* aClippedFrame); private: // nsSVGContainerFrame methods: virtual gfxMatrix GetCanvasTM() override; - already_AddRefed<DrawTarget> - CreateClipMask(gfxContext& aReferenceContext, IntPoint& aOffset); + already_AddRefed<DrawTarget> CreateClipMask(gfxContext& aReferenceContext, + mozilla::gfx::IntPoint& aOffset); DrawResult PaintFrameIntoMask(nsIFrame *aFrame, nsIFrame* aClippedFrame, gfxContext& aTarget, const gfxMatrix& aMatrix); // Set, during a GetClipMask() call, to the transform that still needs to be // concatenated to the transform of the DrawTarget that was passed to // GetClipMask in order to establish the coordinate space that the clipPath // establishes for its contents (i.e. including applying 'clipPathUnits' and
--- a/layout/svg/nsSVGContainerFrame.cpp +++ b/layout/svg/nsSVGContainerFrame.cpp @@ -2,26 +2,28 @@ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ // Main header first: #include "nsSVGContainerFrame.h" // Keep others in (case-insensitive) order: +#include "DrawResult.h" #include "mozilla/RestyleManagerHandle.h" #include "mozilla/RestyleManagerHandleInlines.h" #include "nsCSSFrameConstructor.h" #include "nsSVGEffects.h" #include "nsSVGElement.h" #include "nsSVGUtils.h" #include "nsSVGAnimatedTransformList.h" #include "SVGTextFrame.h" using namespace mozilla; +using namespace mozilla::image; NS_QUERYFRAME_HEAD(nsSVGContainerFrame) NS_QUERYFRAME_ENTRY(nsSVGContainerFrame) NS_QUERYFRAME_TAIL_INHERITING(nsContainerFrame) NS_QUERYFRAME_HEAD(nsSVGDisplayContainerFrame) NS_QUERYFRAME_ENTRY(nsSVGDisplayContainerFrame) NS_QUERYFRAME_ENTRY(nsISVGChildFrame)
--- a/layout/svg/nsSVGFilterInstance.cpp +++ b/layout/svg/nsSVGFilterInstance.cpp @@ -8,16 +8,17 @@ // Keep others in (case-insensitive) order: #include "gfxPlatform.h" #include "gfxUtils.h" #include "nsISVGChildFrame.h" #include "mozilla/dom/HTMLCanvasElement.h" #include "mozilla/dom/SVGFilterElement.h" #include "nsReferencedElement.h" +#include "nsSVGEffects.h" #include "nsSVGFilterFrame.h" #include "nsSVGUtils.h" #include "SVGContentUtils.h" #include "FilterSupport.h" #include "gfx2DGlue.h" using namespace mozilla; using namespace mozilla::dom;
--- a/layout/svg/nsSVGIntegrationUtils.h +++ b/layout/svg/nsSVGIntegrationUtils.h @@ -1,16 +1,17 @@ /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef NSSVGINTEGRATIONUTILS_H_ #define NSSVGINTEGRATIONUTILS_H_ +#include "DrawResult.h" #include "gfxMatrix.h" #include "gfxRect.h" #include "nsRegionFwd.h" #include "mozilla/gfx/Rect.h" class gfxContext; class gfxDrawable; class nsDisplayList;