diff --git a/content/base/public/Makefile.in b/content/base/public/Makefile.in index 9d5ca899411..6cd6a0a54c4 100644 --- a/content/base/public/Makefile.in +++ b/content/base/public/Makefile.in @@ -21,7 +21,6 @@ nsIContentIterator.h \ nsContentPolicyUtils.h \ nsContentUtils.h \ nsIDocument.h \ -nsIDocumentInlines.h \ nsDeprecatedOperationList.h \ nsIDocumentObserver.h \ nsIMutationObserver.h \ diff --git a/content/base/public/nsIDocument.h b/content/base/public/nsIDocument.h index 4658e373d7b..f00606e1d7a 100644 --- a/content/base/public/nsIDocument.h +++ b/content/base/public/nsIDocument.h @@ -91,7 +91,6 @@ class DocumentFragment; class DocumentType; class DOMImplementation; class Element; -class HTMLBodyElement; class Link; class ProcessingInstruction; class UndoManager; @@ -581,7 +580,9 @@ public: Element* GetHtmlChildElement(nsIAtom* aTag); // Get the canonical element, or return null if there isn't one (e.g. // if the root isn't or if the isn't there) - mozilla::dom::HTMLBodyElement* GetBodyElement(); + Element* GetBodyElement() { + return GetHtmlChildElement(nsGkAtoms::body); + } // Get the canonical element, or return null if there isn't one (e.g. // if the root isn't or if the isn't there) Element* GetHeadElement() { diff --git a/content/base/public/nsIDocumentInlines.h b/content/base/public/nsIDocumentInlines.h deleted file mode 100644 index b4b46a9a77e..00000000000 --- a/content/base/public/nsIDocumentInlines.h +++ /dev/null @@ -1,18 +0,0 @@ -/* -*- Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 8; -*- */ -/* vim: set sw=2 sts=2 ts=8 et tw=80 : */ -/* 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 nsIDocumentInlines_h -#define nsIDocumentInlines_h - -#include "nsIDocument.h" -#include "mozilla/dom/HTMLBodyElement.h" - -inline mozilla::dom::HTMLBodyElement* -nsIDocument::GetBodyElement() -{ - return static_cast(GetHtmlChildElement(nsGkAtoms::body)); -} - -#endif // nsIDocumentInlines_h diff --git a/content/base/src/Element.cpp b/content/base/src/Element.cpp index d04e9cb6a75..2871ee36888 100644 --- a/content/base/src/Element.cpp +++ b/content/base/src/Element.cpp @@ -18,7 +18,7 @@ #include "nsDOMAttributeMap.h" #include "nsIAtom.h" #include "nsINodeInfo.h" -#include "nsIDocumentInlines.h" +#include "nsIDocument.h" #include "nsIDOMNodeList.h" #include "nsIDOMDocument.h" #include "nsIContentIterator.h" diff --git a/content/base/src/FragmentOrElement.cpp b/content/base/src/FragmentOrElement.cpp index 34d26257b7f..fb51d78dde7 100644 --- a/content/base/src/FragmentOrElement.cpp +++ b/content/base/src/FragmentOrElement.cpp @@ -19,7 +19,7 @@ #include "nsDOMAttributeMap.h" #include "nsIAtom.h" #include "nsINodeInfo.h" -#include "nsIDocumentInlines.h" +#include "nsIDocument.h" #include "nsIDOMNodeList.h" #include "nsIDOMDocument.h" #include "nsIContentIterator.h" diff --git a/content/base/src/nsDocument.cpp b/content/base/src/nsDocument.cpp index 33fcd479f4e..ae09a829764 100644 --- a/content/base/src/nsDocument.cpp +++ b/content/base/src/nsDocument.cpp @@ -183,9 +183,8 @@ #include "nsIAppsService.h" #include "mozilla/dom/BindingUtils.h" #include "mozilla/dom/DocumentFragment.h" -#include "mozilla/dom/HTMLBodyElement.h" #include "mozilla/dom/UndoManager.h" -#include "nsFrame.h" +#include "nsFrame.h" #include "nsDOMCaretPosition.h" #include "nsIDOMHTMLTextAreaElement.h" #include "nsViewportInfo.h" diff --git a/content/html/content/src/nsGenericHTMLElement.cpp b/content/html/content/src/nsGenericHTMLElement.cpp index 349ce0c8c55..1106d1ec072 100644 --- a/content/html/content/src/nsGenericHTMLElement.cpp +++ b/content/html/content/src/nsGenericHTMLElement.cpp @@ -16,6 +16,7 @@ #include "mozilla/css/StyleRule.h" #include "nsIDocument.h" #include "nsIDocumentEncoder.h" +#include "nsIDOMHTMLBodyElement.h" #include "nsIDOMHTMLDocument.h" #include "nsIDOMAttr.h" #include "nsIDOMDocumentFragment.h" @@ -99,7 +100,6 @@ #include "nsHTMLDocument.h" #include "nsDOMTouchEvent.h" #include "nsGlobalWindow.h" -#include "mozilla/dom/HTMLBodyElement.h" using namespace mozilla; using namespace mozilla::dom; @@ -3025,7 +3025,8 @@ nsGenericHTMLElement::IsCurrentBodyElement() { // TODO Bug 698498: Should this handle the case where GetBody returns a // frameset? - if (!IsHTML(nsGkAtoms::body)) { + nsCOMPtr bodyElement = do_QueryInterface(this); + if (!bodyElement) { return false; } @@ -3037,7 +3038,7 @@ nsGenericHTMLElement::IsCurrentBodyElement() nsCOMPtr htmlElement; htmlDocument->GetBody(getter_AddRefs(htmlElement)); - return htmlElement == static_cast(this); + return htmlElement == bodyElement; } // static diff --git a/content/html/document/src/ImageDocument.cpp b/content/html/document/src/ImageDocument.cpp index 7280afe459e..9f6776020e3 100644 --- a/content/html/document/src/ImageDocument.cpp +++ b/content/html/document/src/ImageDocument.cpp @@ -9,7 +9,6 @@ #include "nsIImageDocument.h" #include "nsIImageLoadingContent.h" #include "nsGenericHTMLElement.h" -#include "nsIDocumentInlines.h" #include "nsIDOMHTMLImageElement.h" #include "nsIDOMEvent.h" #include "nsIDOMKeyEvent.h" diff --git a/content/html/document/src/PluginDocument.cpp b/content/html/document/src/PluginDocument.cpp index 21e9a7f6d2d..e7d50b48a41 100644 --- a/content/html/document/src/PluginDocument.cpp +++ b/content/html/document/src/PluginDocument.cpp @@ -9,7 +9,6 @@ #include "nsIPresShell.h" #include "nsIObjectFrame.h" #include "nsNPAPIPluginInstance.h" -#include "nsIDocumentInlines.h" #include "nsIDocShellTreeItem.h" #include "nsNodeInfoManager.h" #include "nsContentCreatorFunctions.h" diff --git a/content/html/document/src/VideoDocument.cpp b/content/html/document/src/VideoDocument.cpp index b341ea7afca..bb60ef34269 100644 --- a/content/html/document/src/VideoDocument.cpp +++ b/content/html/document/src/VideoDocument.cpp @@ -8,7 +8,6 @@ #include "nsNodeInfoManager.h" #include "nsContentCreatorFunctions.h" #include "nsHTMLMediaElement.h" -#include "nsIDocumentInlines.h" #include "nsIDocShellTreeItem.h" #include "nsContentUtils.h" #include "mozilla/dom/Element.h" diff --git a/content/html/document/src/nsHTMLDocument.cpp b/content/html/document/src/nsHTMLDocument.cpp index d275f174d51..7f2b5bdaa3c 100644 --- a/content/html/document/src/nsHTMLDocument.cpp +++ b/content/html/document/src/nsHTMLDocument.cpp @@ -55,6 +55,7 @@ #include "nsIComponentManager.h" #include "nsParserCIID.h" #include "nsIDOMHTMLElement.h" +#include "nsIDOMHTMLBodyElement.h" #include "nsIDOMHTMLHeadElement.h" #include "nsINameSpaceManager.h" #include "nsGenericHTMLElement.h" @@ -67,7 +68,6 @@ #include "nsContentUtils.h" #include "nsJSUtils.h" -#include "nsIDocumentInlines.h" #include "nsIDocumentEncoder.h" //for outputting selection #include "nsICachingChannel.h" #include "nsIJSContextStack.h" @@ -104,7 +104,6 @@ #include "nsHtml5Parser.h" #include "nsIDOMJSWindow.h" #include "nsSandboxFlags.h" -#include "mozilla/dom/HTMLBodyElement.h" using namespace mozilla; using namespace mozilla::dom; @@ -2058,7 +2057,7 @@ nsHTMLDocument::GetAlinkColor(nsAString& aAlinkColor) { aAlinkColor.Truncate(); - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->GetALink(aAlinkColor); } @@ -2069,7 +2068,7 @@ nsHTMLDocument::GetAlinkColor(nsAString& aAlinkColor) NS_IMETHODIMP nsHTMLDocument::SetAlinkColor(const nsAString& aAlinkColor) { - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->SetALink(aAlinkColor); } @@ -2082,7 +2081,7 @@ nsHTMLDocument::GetLinkColor(nsAString& aLinkColor) { aLinkColor.Truncate(); - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->GetLink(aLinkColor); } @@ -2093,7 +2092,7 @@ nsHTMLDocument::GetLinkColor(nsAString& aLinkColor) NS_IMETHODIMP nsHTMLDocument::SetLinkColor(const nsAString& aLinkColor) { - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->SetLink(aLinkColor); } @@ -2106,7 +2105,7 @@ nsHTMLDocument::GetVlinkColor(nsAString& aVlinkColor) { aVlinkColor.Truncate(); - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->GetVLink(aVlinkColor); } @@ -2117,7 +2116,7 @@ nsHTMLDocument::GetVlinkColor(nsAString& aVlinkColor) NS_IMETHODIMP nsHTMLDocument::SetVlinkColor(const nsAString& aVlinkColor) { - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->SetVLink(aVlinkColor); } @@ -2130,7 +2129,7 @@ nsHTMLDocument::GetBgColor(nsAString& aBgColor) { aBgColor.Truncate(); - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->GetBgColor(aBgColor); } @@ -2141,7 +2140,7 @@ nsHTMLDocument::GetBgColor(nsAString& aBgColor) NS_IMETHODIMP nsHTMLDocument::SetBgColor(const nsAString& aBgColor) { - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->SetBgColor(aBgColor); } @@ -2154,7 +2153,7 @@ nsHTMLDocument::GetFgColor(nsAString& aFgColor) { aFgColor.Truncate(); - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->GetText(aFgColor); } @@ -2165,7 +2164,7 @@ nsHTMLDocument::GetFgColor(nsAString& aFgColor) NS_IMETHODIMP nsHTMLDocument::SetFgColor(const nsAString& aFgColor) { - HTMLBodyElement* body = GetBodyElement(); + nsCOMPtr body = do_QueryInterface(GetBodyElement()); if (body) { body->SetText(aFgColor); } diff --git a/content/svg/content/src/Makefile.in b/content/svg/content/src/Makefile.in index 115d2d56725..4507c8ff441 100644 --- a/content/svg/content/src/Makefile.in +++ b/content/svg/content/src/Makefile.in @@ -56,6 +56,7 @@ CPPSRCS = \ nsSVGNumber2.cpp \ nsSVGNumberPair.cpp \ nsSVGPathDataParser.cpp \ + nsSVGPathElement.cpp \ nsSVGPathGeometryElement.cpp \ nsSVGPatternElement.cpp \ nsSVGPolyElement.cpp \ @@ -108,7 +109,6 @@ CPPSRCS = \ SVGNumberPairSMILType.cpp \ SVGOrientSMILType.cpp \ SVGPathData.cpp \ - SVGPathElement.cpp \ SVGPathSegUtils.cpp \ SVGPathSegListSMILType.cpp \ SVGPointList.cpp \ @@ -174,7 +174,6 @@ EXPORTS_mozilla/dom = \ SVGLocatableElement.h \ SVGMetadataElement.h \ SVGMPathElement.h \ - SVGPathElement.h \ SVGPolygonElement.h \ SVGPolylineElement.h \ SVGRectElement.h \ diff --git a/content/svg/content/src/SVGMPathElement.cpp b/content/svg/content/src/SVGMPathElement.cpp index 6a81fe04a1e..acf858859c2 100644 --- a/content/svg/content/src/SVGMPathElement.cpp +++ b/content/svg/content/src/SVGMPathElement.cpp @@ -8,8 +8,8 @@ #include "mozilla/dom/SVGMPathElement.h" #include "nsAutoPtr.h" #include "nsDebug.h" +#include "nsSVGPathElement.h" #include "mozilla/dom/SVGAnimateMotionElement.h" -#include "mozilla/dom/SVGPathElement.h" #include "nsContentUtils.h" #include "mozilla/dom/SVGMPathElementBinding.h" @@ -203,7 +203,7 @@ SVGMPathElement::AttributeChanged(nsIDocument* aDocument, //---------------------------------------------------------------------- // Public helper methods -SVGPathElement* +nsSVGPathElement* SVGMPathElement::GetReferencedPath() { if (!HasAttr(kNameSpaceID_XLink, nsGkAtoms::href)) { @@ -215,7 +215,7 @@ SVGMPathElement::GetReferencedPath() nsIContent* genericTarget = mHrefTarget.get(); if (genericTarget && genericTarget->IsSVG(nsGkAtoms::path)) { - return static_cast(genericTarget); + return static_cast(genericTarget); } return nullptr; } diff --git a/content/svg/content/src/SVGMPathElement.h b/content/svg/content/src/SVGMPathElement.h index 1ae189aa3b5..b6b00c736ed 100644 --- a/content/svg/content/src/SVGMPathElement.h +++ b/content/svg/content/src/SVGMPathElement.h @@ -10,6 +10,7 @@ #include "nsIDOMSVGURIReference.h" #include "nsSVGElement.h" #include "nsStubMutationObserver.h" +#include "nsSVGPathElement.h" #include "nsSVGString.h" #include "nsReferencedElement.h" @@ -20,7 +21,6 @@ typedef nsSVGElement SVGMPathElementBase; namespace mozilla { namespace dom { -class SVGPathElement; class SVGMPathElement MOZ_FINAL : public SVGMPathElementBase, public nsIDOMSVGMpathElement, @@ -69,7 +69,7 @@ public: // Public helper method: If our xlink:href attribute links to a // element, this method returns a pointer to that element. Otherwise, // this returns nullptr. - SVGPathElement* GetReferencedPath(); + nsSVGPathElement* GetReferencedPath(); virtual nsXPCClassInfo* GetClassInfo(); diff --git a/content/svg/content/src/SVGMotionSMILAnimationFunction.cpp b/content/svg/content/src/SVGMotionSMILAnimationFunction.cpp index 8e3ee0deac6..b7bdbd4c099 100644 --- a/content/svg/content/src/SVGMotionSMILAnimationFunction.cpp +++ b/content/svg/content/src/SVGMotionSMILAnimationFunction.cpp @@ -10,8 +10,8 @@ #include "SVGMotionSMILType.h" #include "SVGMotionSMILPathUtils.h" #include "nsSVGPathDataParser.h" -#include "mozilla/dom/SVGPathElement.h" // for nsSVGPathList -#include "mozilla/dom/SVGMPathElement.h" +#include "nsSVGPathElement.h" // for nsSVGPathList +#include "SVGMPathElement.h" #include "nsAttrValueInlines.h" namespace mozilla { @@ -217,7 +217,7 @@ SVGMotionSMILAnimationFunction:: mPathSourceType = ePathSourceType_Mpath; // Use the path that's the target of our chosen child. - SVGPathElement* pathElem = aMpathElem->GetReferencedPath(); + nsSVGPathElement* pathElem = aMpathElem->GetReferencedPath(); if (pathElem) { const SVGPathData &path = pathElem->GetAnimPathSegList()->GetAnimValue(); // Path data must contain of at least one path segment (if the path data diff --git a/content/svg/content/src/SVGMotionSMILType.cpp b/content/svg/content/src/SVGMotionSMILType.cpp index 84416338a5a..9e256239bef 100644 --- a/content/svg/content/src/SVGMotionSMILType.cpp +++ b/content/svg/content/src/SVGMotionSMILType.cpp @@ -8,10 +8,8 @@ #include "SVGMotionSMILType.h" #include "nsSMILValue.h" #include "nsDebug.h" +#include "nsSVGPathElement.h" #include "nsMathUtils.h" -#include "nsISupportsUtils.h" -#include "gfxPath.h" -#include "nsTArray.h" #include namespace mozilla { diff --git a/content/svg/content/src/nsSVGPathDataParser.cpp b/content/svg/content/src/nsSVGPathDataParser.cpp index 2b9882ef217..9f7f390985f 100644 --- a/content/svg/content/src/nsSVGPathDataParser.cpp +++ b/content/svg/content/src/nsSVGPathDataParser.cpp @@ -5,6 +5,7 @@ #include "nsSVGPathDataParser.h" #include "nsSVGDataParser.h" +#include "nsSVGPathElement.h" #include "prdtoa.h" #include "DOMSVGPathSeg.h" #include diff --git a/content/svg/content/src/SVGPathElement.cpp b/content/svg/content/src/nsSVGPathElement.cpp similarity index 75% rename from content/svg/content/src/SVGPathElement.cpp rename to content/svg/content/src/nsSVGPathElement.cpp index 83896c5da25..eb50b4aed00 100644 --- a/content/svg/content/src/SVGPathElement.cpp +++ b/content/svg/content/src/nsSVGPathElement.cpp @@ -10,59 +10,58 @@ #include "DOMSVGPathSegList.h" #include "nsCOMPtr.h" #include "nsContentUtils.h" -#include "mozilla/dom/SVGPathElement.h" +#include "nsSVGPathElement.h" #include "DOMSVGPoint.h" #include "gfxContext.h" -DOMCI_NODE_DATA(SVGPathElement, mozilla::dom::SVGPathElement) +using namespace mozilla; -NS_IMPL_NS_NEW_NAMESPACED_SVG_ELEMENT(Path) - -namespace mozilla { -namespace dom { - -nsSVGElement::NumberInfo SVGPathElement::sNumberInfo = +nsSVGElement::NumberInfo nsSVGPathElement::sNumberInfo = { &nsGkAtoms::pathLength, 0, false }; +NS_IMPL_NS_NEW_SVG_ELEMENT(Path) + //---------------------------------------------------------------------- // nsISupports methods -NS_IMPL_ADDREF_INHERITED(SVGPathElement,SVGPathElementBase) -NS_IMPL_RELEASE_INHERITED(SVGPathElement,SVGPathElementBase) +NS_IMPL_ADDREF_INHERITED(nsSVGPathElement,nsSVGPathElementBase) +NS_IMPL_RELEASE_INHERITED(nsSVGPathElement,nsSVGPathElementBase) -NS_INTERFACE_TABLE_HEAD(SVGPathElement) - NS_NODE_INTERFACE_TABLE5(SVGPathElement, nsIDOMNode, nsIDOMElement, +DOMCI_NODE_DATA(SVGPathElement, nsSVGPathElement) + +NS_INTERFACE_TABLE_HEAD(nsSVGPathElement) + NS_NODE_INTERFACE_TABLE5(nsSVGPathElement, nsIDOMNode, nsIDOMElement, nsIDOMSVGElement, nsIDOMSVGPathElement, nsIDOMSVGAnimatedPathData) NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(SVGPathElement) -NS_INTERFACE_MAP_END_INHERITING(SVGPathElementBase) +NS_INTERFACE_MAP_END_INHERITING(nsSVGPathElementBase) //---------------------------------------------------------------------- // Implementation -SVGPathElement::SVGPathElement(already_AddRefed aNodeInfo) - : SVGPathElementBase(aNodeInfo) +nsSVGPathElement::nsSVGPathElement(already_AddRefed aNodeInfo) + : nsSVGPathElementBase(aNodeInfo) { } //---------------------------------------------------------------------- // nsIDOMNode methods -NS_IMPL_ELEMENT_CLONE_WITH_INIT(SVGPathElement) +NS_IMPL_ELEMENT_CLONE_WITH_INIT(nsSVGPathElement) //---------------------------------------------------------------------- // nsIDOMSVGPathElement methods: /* readonly attribute nsIDOMSVGAnimatedNumber pathLength; */ NS_IMETHODIMP -SVGPathElement::GetPathLength(nsIDOMSVGAnimatedNumber * *aPathLength) +nsSVGPathElement::GetPathLength(nsIDOMSVGAnimatedNumber * *aPathLength) { return mPathLength.ToDOMAnimatedNumber(aPathLength, this); } /* float getTotalLength (); */ NS_IMETHODIMP -SVGPathElement::GetTotalLength(float *_retval) +nsSVGPathElement::GetTotalLength(float *_retval) { *_retval = 0; @@ -78,7 +77,7 @@ SVGPathElement::GetTotalLength(float *_retval) /* DOMSVGPoint getPointAtLength (in float distance); */ NS_IMETHODIMP -SVGPathElement::GetPointAtLength(float distance, nsISupports **_retval) +nsSVGPathElement::GetPointAtLength(float distance, nsISupports **_retval) { NS_ENSURE_FINITE(distance, NS_ERROR_ILLEGAL_VALUE); @@ -103,7 +102,7 @@ SVGPathElement::GetPointAtLength(float distance, nsISupports **_retval) /* unsigned long getPathSegAtLength (in float distance); */ NS_IMETHODIMP -SVGPathElement::GetPathSegAtLength(float distance, uint32_t *_retval) +nsSVGPathElement::GetPathSegAtLength(float distance, uint32_t *_retval) { NS_ENSURE_FINITE(distance, NS_ERROR_ILLEGAL_VALUE); *_retval = mD.GetAnimValue().GetPathSegAtLength(distance); @@ -112,7 +111,7 @@ SVGPathElement::GetPathSegAtLength(float distance, uint32_t *_retval) /* nsISupports createSVGPathSegClosePath (); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegClosePath(nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegClosePath(nsISupports **_retval) { nsISupports* seg = NS_NewSVGPathSegClosePath(); NS_ENSURE_TRUE(seg, NS_ERROR_OUT_OF_MEMORY); @@ -121,7 +120,7 @@ SVGPathElement::CreateSVGPathSegClosePath(nsISupports **_retval) /* nsISupports createSVGPathSegMovetoAbs (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegMovetoAbs(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegMovetoAbs(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegMovetoAbs(x, y); @@ -131,7 +130,7 @@ SVGPathElement::CreateSVGPathSegMovetoAbs(float x, float y, nsISupports **_retva /* nsISupports createSVGPathSegMovetoRel (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegMovetoRel(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegMovetoRel(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegMovetoRel(x, y); @@ -141,7 +140,7 @@ SVGPathElement::CreateSVGPathSegMovetoRel(float x, float y, nsISupports **_retva /* nsISupports createSVGPathSegLinetoAbs (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoAbs(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoAbs(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoAbs(x, y); @@ -151,7 +150,7 @@ SVGPathElement::CreateSVGPathSegLinetoAbs(float x, float y, nsISupports **_retva /* nsISupports createSVGPathSegLinetoRel (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoRel(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoRel(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoRel(x, y); @@ -161,7 +160,7 @@ SVGPathElement::CreateSVGPathSegLinetoRel(float x, float y, nsISupports **_retva /* nsISupports createSVGPathSegCurvetoCubicAbs (in float x, in float y, in float x1, in float y1, in float x2, in float y2); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2, nsISupports **_retval) { NS_ENSURE_FINITE6(x, y, x1, y1, x2, y2, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoCubicAbs(x, y, x1, y1, x2, y2); @@ -171,7 +170,7 @@ SVGPathElement::CreateSVGPathSegCurvetoCubicAbs(float x, float y, float x1, floa /* nsISupports createSVGPathSegCurvetoCubicRel (in float x, in float y, in float x1, in float y1, in float x2, in float y2); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2, nsISupports **_retval) { NS_ENSURE_FINITE6(x, y, x1, y1, x2, y2, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoCubicRel(x, y, x1, y1, x2, y2); @@ -181,7 +180,7 @@ SVGPathElement::CreateSVGPathSegCurvetoCubicRel(float x, float y, float x1, floa /* nsISupports createSVGPathSegCurvetoQuadraticAbs (in float x, in float y, in float x1, in float y1); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1, nsISupports **_retval) { NS_ENSURE_FINITE4(x, y, x1, y1, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoQuadraticAbs(x, y, x1, y1); @@ -191,7 +190,7 @@ SVGPathElement::CreateSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, /* nsISupports createSVGPathSegCurvetoQuadraticRel (in float x, in float y, in float x1, in float y1); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1, nsISupports **_retval) { NS_ENSURE_FINITE4(x, y, x1, y1, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoQuadraticRel(x, y, x1, y1); @@ -201,7 +200,7 @@ SVGPathElement::CreateSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, /* nsISupports createSVGPathSegArcAbs (in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, nsISupports **_retval) { NS_ENSURE_FINITE5(x, y, r1, r2, angle, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegArcAbs(x, y, r1, r2, angle, @@ -212,7 +211,7 @@ SVGPathElement::CreateSVGPathSegArcAbs(float x, float y, float r1, float r2, flo /* nsISupports createSVGPathSegArcRel (in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, nsISupports **_retval) { NS_ENSURE_FINITE5(x, y, r1, r2, angle, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegArcRel(x, y, r1, r2, angle, @@ -223,7 +222,7 @@ SVGPathElement::CreateSVGPathSegArcRel(float x, float y, float r1, float r2, flo /* nsISupports createSVGPathSegLinetoHorizontalAbs (in float x); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoHorizontalAbs(float x, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoHorizontalAbs(float x, nsISupports **_retval) { NS_ENSURE_FINITE(x, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoHorizontalAbs(x); @@ -233,7 +232,7 @@ SVGPathElement::CreateSVGPathSegLinetoHorizontalAbs(float x, nsISupports **_retv /* nsISupports createSVGPathSegLinetoHorizontalRel (in float x); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoHorizontalRel(float x, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoHorizontalRel(float x, nsISupports **_retval) { NS_ENSURE_FINITE(x, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoHorizontalRel(x); @@ -243,7 +242,7 @@ SVGPathElement::CreateSVGPathSegLinetoHorizontalRel(float x, nsISupports **_retv /* nsISupports createSVGPathSegLinetoVerticalAbs (in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoVerticalAbs(float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoVerticalAbs(float y, nsISupports **_retval) { NS_ENSURE_FINITE(y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoVerticalAbs(y); @@ -253,7 +252,7 @@ SVGPathElement::CreateSVGPathSegLinetoVerticalAbs(float y, nsISupports **_retval /* nsISupports createSVGPathSegLinetoVerticalRel (in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegLinetoVerticalRel(float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegLinetoVerticalRel(float y, nsISupports **_retval) { NS_ENSURE_FINITE(y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegLinetoVerticalRel(y); @@ -263,7 +262,7 @@ SVGPathElement::CreateSVGPathSegLinetoVerticalRel(float y, nsISupports **_retval /* nsISupports createSVGPathSegCurvetoCubicSmoothAbs (in float x, in float y, in float x2, in float y2); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2, nsISupports **_retval) { NS_ENSURE_FINITE4(x, y, x2, y2, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoCubicSmoothAbs(x, y, x2, y2); @@ -273,7 +272,7 @@ SVGPathElement::CreateSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2 /* nsISupports createSVGPathSegCurvetoCubicSmoothRel (in float x, in float y, in float x2, in float y2); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2, nsISupports **_retval) { NS_ENSURE_FINITE4(x, y, x2, y2, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoCubicSmoothRel(x, y, x2, y2); @@ -283,7 +282,7 @@ SVGPathElement::CreateSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2 /* nsISupports createSVGPathSegCurvetoQuadraticSmoothAbs (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoQuadraticSmoothAbs(x, y); @@ -293,7 +292,7 @@ SVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y, nsIS /* nsISupports createSVGPathSegCurvetoQuadraticSmoothRel (in float x, in float y); */ NS_IMETHODIMP -SVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothRel(float x, float y, nsISupports **_retval) +nsSVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothRel(float x, float y, nsISupports **_retval) { NS_ENSURE_FINITE2(x, y, NS_ERROR_ILLEGAL_VALUE); nsISupports* seg = NS_NewSVGPathSegCurvetoQuadraticSmoothRel(x, y); @@ -305,13 +304,13 @@ SVGPathElement::CreateSVGPathSegCurvetoQuadraticSmoothRel(float x, float y, nsIS // nsSVGElement methods /* virtual */ bool -SVGPathElement::HasValidDimensions() const +nsSVGPathElement::HasValidDimensions() const { return !mD.GetAnimValue().IsEmpty(); } nsSVGElement::NumberAttributesInfo -SVGPathElement::GetNumberInfo() +nsSVGPathElement::GetNumberInfo() { return NumberAttributesInfo(&mPathLength, &sNumberInfo, 1); } @@ -320,7 +319,7 @@ SVGPathElement::GetNumberInfo() // nsIDOMSVGAnimatedPathData methods: /* readonly attribute DOMSVGPathSegList pathSegList; */ -NS_IMETHODIMP SVGPathElement::GetPathSegList(nsISupports * *aPathSegList) +NS_IMETHODIMP nsSVGPathElement::GetPathSegList(nsISupports * *aPathSegList) { void *key = mD.GetBaseValKey(); *aPathSegList = DOMSVGPathSegList::GetDOMWrapper(key, this, false).get(); @@ -328,7 +327,7 @@ NS_IMETHODIMP SVGPathElement::GetPathSegList(nsISupports * *aPathSegList) } /* readonly attribute DOMSVGPathSegList animatedPathSegList; */ -NS_IMETHODIMP SVGPathElement::GetAnimatedPathSegList(nsISupports * *aAnimatedPathSegList) +NS_IMETHODIMP nsSVGPathElement::GetAnimatedPathSegList(nsISupports * *aAnimatedPathSegList) { void *key = mD.GetAnimValKey(); *aAnimatedPathSegList = @@ -340,18 +339,18 @@ NS_IMETHODIMP SVGPathElement::GetAnimatedPathSegList(nsISupports * *aAnimatedPat // nsIContent methods NS_IMETHODIMP_(bool) -SVGPathElement::IsAttributeMapped(const nsIAtom* name) const +nsSVGPathElement::IsAttributeMapped(const nsIAtom* name) const { static const MappedAttributeEntry* const map[] = { sMarkersMap }; return FindAttributeDependence(name, map) || - SVGPathElementBase::IsAttributeMapped(name); + nsSVGPathElementBase::IsAttributeMapped(name); } already_AddRefed -SVGPathElement::GetFlattenedPath(const gfxMatrix &aMatrix) +nsSVGPathElement::GetFlattenedPath(const gfxMatrix &aMatrix) { return mD.GetAnimValue().ToFlattenedPath(aMatrix); } @@ -360,32 +359,32 @@ SVGPathElement::GetFlattenedPath(const gfxMatrix &aMatrix) // nsSVGPathGeometryElement methods bool -SVGPathElement::AttributeDefinesGeometry(const nsIAtom *aName) +nsSVGPathElement::AttributeDefinesGeometry(const nsIAtom *aName) { return aName == nsGkAtoms::d || aName == nsGkAtoms::pathLength; } bool -SVGPathElement::IsMarkable() +nsSVGPathElement::IsMarkable() { return true; } void -SVGPathElement::GetMarkPoints(nsTArray *aMarks) +nsSVGPathElement::GetMarkPoints(nsTArray *aMarks) { mD.GetAnimValue().GetMarkerPositioningData(aMarks); } void -SVGPathElement::ConstructPath(gfxContext *aCtx) +nsSVGPathElement::ConstructPath(gfxContext *aCtx) { mD.GetAnimValue().ConstructPath(aCtx); } gfxFloat -SVGPathElement::GetPathLengthScale(PathLengthScaleForType aFor) +nsSVGPathElement::GetPathLengthScale(PathLengthScaleForType aFor) { NS_ABORT_IF_FALSE(aFor == eForTextPath || aFor == eForStroking, "Unknown enum"); @@ -407,6 +406,3 @@ SVGPathElement::GetPathLengthScale(PathLengthScaleForType aFor) } return 1.0; } - -} // namespace dom -} // namespace mozilla diff --git a/content/svg/content/src/SVGPathElement.h b/content/svg/content/src/nsSVGPathElement.h similarity index 71% rename from content/svg/content/src/SVGPathElement.h rename to content/svg/content/src/nsSVGPathElement.h index 5f24eb159eb..92c2fbd24fd 100644 --- a/content/svg/content/src/SVGPathElement.h +++ b/content/svg/content/src/nsSVGPathElement.h @@ -3,8 +3,8 @@ * 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 mozilla_dom_SVGPathElement_h -#define mozilla_dom_SVGPathElement_h +#ifndef __NS_SVGPATHELEMENT_H__ +#define __NS_SVGPATHELEMENT_H__ #include "nsIDOMSVGAnimatedPathData.h" #include "nsIDOMSVGPathElement.h" @@ -12,29 +12,23 @@ #include "nsSVGPathGeometryElement.h" #include "SVGAnimatedPathSegList.h" -nsresult NS_NewSVGPathElement(nsIContent **aResult, - already_AddRefed aNodeInfo); - class gfxContext; -typedef nsSVGPathGeometryElement SVGPathElementBase; +typedef nsSVGPathGeometryElement nsSVGPathElementBase; -namespace mozilla { -namespace dom { - -class SVGPathElement MOZ_FINAL : public SVGPathElementBase, - public nsIDOMSVGPathElement, - public nsIDOMSVGAnimatedPathData +class nsSVGPathElement : public nsSVGPathElementBase, + public nsIDOMSVGPathElement, + public nsIDOMSVGAnimatedPathData { friend class nsSVGPathFrame; protected: - friend nsresult (::NS_NewSVGPathElement(nsIContent **aResult, - already_AddRefed aNodeInfo)); - SVGPathElement(already_AddRefed aNodeInfo); + friend nsresult NS_NewSVGPathElement(nsIContent **aResult, + already_AddRefed aNodeInfo); + nsSVGPathElement(already_AddRefed aNodeInfo); public: - typedef SVGAnimatedPathSegList SVGAnimatedPathSegList; + typedef mozilla::SVGAnimatedPathSegList SVGAnimatedPathSegList; // interfaces: NS_DECL_ISUPPORTS_INHERITED @@ -44,7 +38,7 @@ public: // xxx I wish we could use virtual inheritance NS_FORWARD_NSIDOMNODE_TO_NSINODE NS_FORWARD_NSIDOMELEMENT_TO_GENERIC - NS_FORWARD_NSIDOMSVGELEMENT(SVGPathElementBase::) + NS_FORWARD_NSIDOMSVGELEMENT(nsSVGPathElementBase::) // nsIContent interface NS_IMETHOD_(bool) IsAttributeMapped(const nsIAtom* name) const; @@ -97,7 +91,4 @@ protected: static NumberInfo sNumberInfo; }; -} // namespace dom -} // namespace mozilla - -#endif // mozilla_dom_SVGPathElement_h +#endif diff --git a/content/svg/content/src/nsSVGPolyElement.cpp b/content/svg/content/src/nsSVGPolyElement.cpp index 543bb535204..2bd7e10a46b 100644 --- a/content/svg/content/src/nsSVGPolyElement.cpp +++ b/content/svg/content/src/nsSVGPolyElement.cpp @@ -19,6 +19,7 @@ NS_IMPL_ADDREF_INHERITED(nsSVGPolyElement,nsSVGPolyElementBase) NS_IMPL_RELEASE_INHERITED(nsSVGPolyElement,nsSVGPolyElementBase) NS_INTERFACE_MAP_BEGIN(nsSVGPolyElement) + NS_INTERFACE_MAP_ENTRY(nsIDOMSVGAnimatedPoints) NS_INTERFACE_MAP_END_INHERITING(nsSVGPolyElementBase) //---------------------------------------------------------------------- @@ -30,6 +31,17 @@ nsSVGPolyElement::nsSVGPolyElement(already_AddRefed aNodeInfo) SetIsDOMBinding(); } +//---------------------------------------------------------------------- +// nsIDOMSGAnimatedPoints methods: + +/* readonly attribute DOMSVGPointList points; */ +NS_IMETHODIMP +nsSVGPolyElement::GetPoints(nsISupports * *aPoints) +{ + *aPoints = Points().get(); + return NS_OK; +} + already_AddRefed nsSVGPolyElement::Points() { @@ -38,6 +50,14 @@ nsSVGPolyElement::Points() return points.forget(); } +/* readonly attribute DOMSVGPointList animatedPoints; */ +NS_IMETHODIMP +nsSVGPolyElement::GetAnimatedPoints(nsISupports * *aAnimatedPoints) +{ + *aAnimatedPoints = AnimatedPoints().get(); + return NS_OK; +} + already_AddRefed nsSVGPolyElement::AnimatedPoints() { diff --git a/content/svg/content/src/nsSVGPolyElement.h b/content/svg/content/src/nsSVGPolyElement.h index c1af280d3df..3d03ae1bfc2 100644 --- a/content/svg/content/src/nsSVGPolyElement.h +++ b/content/svg/content/src/nsSVGPolyElement.h @@ -6,6 +6,7 @@ #ifndef NS_SVGPOLYELEMENT_H_ #define NS_SVGPOLYELEMENT_H_ +#include "nsIDOMSVGAnimatedPoints.h" #include "nsSVGPathGeometryElement.h" #include "SVGAnimatedPointList.h" @@ -17,15 +18,17 @@ namespace mozilla { class DOMSVGPointList; } -class nsSVGPolyElement : public nsSVGPolyElementBase +class nsSVGPolyElement : public nsSVGPolyElementBase, + public nsIDOMSVGAnimatedPoints { protected: nsSVGPolyElement(already_AddRefed aNodeInfo); public: //interfaces - + NS_DECL_ISUPPORTS_INHERITED + NS_DECL_NSIDOMSVGANIMATEDPOINTS // nsIContent interface NS_IMETHOD_(bool) IsAttributeMapped(const nsIAtom* name) const; diff --git a/dom/base/nsDOMClassInfo.cpp b/dom/base/nsDOMClassInfo.cpp index 18982c69962..920fa1f1bb9 100644 --- a/dom/base/nsDOMClassInfo.cpp +++ b/dom/base/nsDOMClassInfo.cpp @@ -317,6 +317,7 @@ #include "nsIDOMSVGAnimatedLength.h" #include "nsIDOMSVGAnimatedNumber.h" #include "nsIDOMSVGAnimatedPathData.h" +#include "nsIDOMSVGAnimatedPoints.h" #include "nsIDOMSVGAnimatedRect.h" #include "nsIDOMSVGAnimatedString.h" #include "nsIDOMSVGAnimateElement.h" @@ -3320,11 +3321,13 @@ nsDOMClassInfo::Init() DOM_CLASSINFO_MAP_BEGIN(SVGPolygonElement, nsIDOMSVGPolygonElement) DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGPolygonElement) + DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGAnimatedPoints) DOM_CLASSINFO_SVG_GRAPHIC_ELEMENT_MAP_ENTRIES DOM_CLASSINFO_MAP_END DOM_CLASSINFO_MAP_BEGIN(SVGPolylineElement, nsIDOMSVGPolylineElement) DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGPolylineElement) + DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGAnimatedPoints) DOM_CLASSINFO_SVG_GRAPHIC_ELEMENT_MAP_ENTRIES DOM_CLASSINFO_MAP_END diff --git a/dom/interfaces/svg/Makefile.in b/dom/interfaces/svg/Makefile.in index 11d25053ada..c126cee1331 100644 --- a/dom/interfaces/svg/Makefile.in +++ b/dom/interfaces/svg/Makefile.in @@ -24,6 +24,7 @@ XPIDLSRCS = \ nsIDOMSVGAnimatedLength.idl \ nsIDOMSVGAnimatedNumber.idl \ nsIDOMSVGAnimatedPathData.idl \ + nsIDOMSVGAnimatedPoints.idl \ nsIDOMSVGAnimatedRect.idl \ nsIDOMSVGAnimatedString.idl \ nsIDOMSVGAnimateElement.idl \ diff --git a/dom/interfaces/svg/nsIDOMSVGAnimatedPoints.idl b/dom/interfaces/svg/nsIDOMSVGAnimatedPoints.idl new file mode 100644 index 00000000000..16bd9d9159d --- /dev/null +++ b/dom/interfaces/svg/nsIDOMSVGAnimatedPoints.idl @@ -0,0 +1,14 @@ +/* -*- Mode: IDL; 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/. */ + + +#include "domstubs.idl" + +[scriptable, uuid(ebf334b3-86ef-4bf3-8a92-d775c72defa4)] +interface nsIDOMSVGAnimatedPoints : nsISupports +{ + readonly attribute nsISupports points; + readonly attribute nsISupports animatedPoints; +}; diff --git a/dom/ipc/TabChild.cpp b/dom/ipc/TabChild.cpp index cb51a73a7c5..0e047645a85 100644 --- a/dom/ipc/TabChild.cpp +++ b/dom/ipc/TabChild.cpp @@ -37,7 +37,6 @@ #include "nsIAppsService.h" #include "nsIBaseWindow.h" #include "nsIComponentManager.h" -#include "nsIDocumentInlines.h" #include "nsIDOMClassInfo.h" #include "nsIDOMElement.h" #include "nsIDOMEvent.h" @@ -428,7 +427,7 @@ TabChild::HandlePossibleViewportChange() float minScale = 1.0f; nsCOMPtr htmlDOMElement = do_QueryInterface(document->GetHtmlElement()); - HTMLBodyElement* bodyDOMElement = document->GetBodyElement(); + nsCOMPtr bodyDOMElement = do_QueryInterface(document->GetBodyElement()); int32_t htmlWidth = 0, htmlHeight = 0; if (htmlDOMElement) { @@ -437,8 +436,8 @@ TabChild::HandlePossibleViewportChange() } int32_t bodyWidth = 0, bodyHeight = 0; if (bodyDOMElement) { - bodyWidth = bodyDOMElement->ScrollWidth(); - bodyHeight = bodyDOMElement->ScrollHeight(); + bodyDOMElement->GetScrollWidth(&bodyWidth); + bodyDOMElement->GetScrollHeight(&bodyHeight); } float pageWidth, pageHeight; diff --git a/editor/libeditor/html/nsHTMLEditor.cpp b/editor/libeditor/html/nsHTMLEditor.cpp index d09cf3bf3ba..8ecce7d0a88 100644 --- a/editor/libeditor/html/nsHTMLEditor.cpp +++ b/editor/libeditor/html/nsHTMLEditor.cpp @@ -69,7 +69,6 @@ #include "nsIParserService.h" #include "mozilla/Selection.h" #include "mozilla/dom/Element.h" -#include "mozilla/dom/HTMLBodyElement.h" #include "nsTextFragment.h" using namespace mozilla; diff --git a/layout/base/nsCSSRendering.cpp b/layout/base/nsCSSRendering.cpp index 99fbbab4581..f8162d78d47 100644 --- a/layout/base/nsCSSRendering.cpp +++ b/layout/base/nsCSSRendering.cpp @@ -27,7 +27,7 @@ #include "nsCSSAnonBoxes.h" #include "nsTransform2D.h" #include "nsIContent.h" -#include "nsIDocumentInlines.h" +#include "nsIDocument.h" #include "nsIScrollableFrame.h" #include "imgIRequest.h" #include "imgIContainer.h" diff --git a/layout/generic/nsBlockFrame.cpp b/layout/generic/nsBlockFrame.cpp index 3a2b93f3958..8da4bd341b7 100644 --- a/layout/generic/nsBlockFrame.cpp +++ b/layout/generic/nsBlockFrame.cpp @@ -6028,8 +6028,9 @@ static void ComputeVisualOverflowArea(nsLineList& aLines, bool nsBlockFrame::IsVisibleInSelection(nsISelection* aSelection) { - if (mContent->IsHTML() && (mContent->Tag() == nsGkAtoms::html || - mContent->Tag() == nsGkAtoms::body)) + nsCOMPtr html(do_QueryInterface(mContent)); + nsCOMPtr body(do_QueryInterface(mContent)); + if (html || body) return true; nsCOMPtr node(do_QueryInterface(mContent)); diff --git a/layout/generic/nsGfxScrollFrame.cpp b/layout/generic/nsGfxScrollFrame.cpp index 49a0f09fbe9..e0510aa491b 100644 --- a/layout/generic/nsGfxScrollFrame.cpp +++ b/layout/generic/nsGfxScrollFrame.cpp @@ -17,7 +17,7 @@ #include "nsGkAtoms.h" #include "nsINameSpaceManager.h" #include "nsContentList.h" -#include "nsIDocumentInlines.h" +#include "nsIDocument.h" #include "nsFontMetrics.h" #include "nsIDocumentObserver.h" #include "nsBoxLayoutState.h" diff --git a/layout/style/nsStyleSet.cpp b/layout/style/nsStyleSet.cpp index 4a347389887..f83bb4ec46e 100644 --- a/layout/style/nsStyleSet.cpp +++ b/layout/style/nsStyleSet.cpp @@ -14,7 +14,7 @@ #include "nsStyleSet.h" #include "nsNetUtil.h" #include "nsCSSStyleSheet.h" -#include "nsIDocumentInlines.h" +#include "nsIDocument.h" #include "nsRuleWalker.h" #include "nsStyleContext.h" #include "mozilla/css/StyleRule.h" diff --git a/layout/svg/nsSVGGeometryFrame.cpp b/layout/svg/nsSVGGeometryFrame.cpp index 0989b6a50f7..8172dafe8b4 100644 --- a/layout/svg/nsSVGGeometryFrame.cpp +++ b/layout/svg/nsSVGGeometryFrame.cpp @@ -12,6 +12,7 @@ #include "nsPresContext.h" #include "nsSVGEffects.h" #include "nsSVGPaintServerFrame.h" +#include "nsSVGPathElement.h" #include "nsSVGUtils.h" NS_IMPL_FRAMEARENA_HELPERS(nsSVGGeometryFrame) diff --git a/layout/svg/nsSVGTextFrame.cpp b/layout/svg/nsSVGTextFrame.cpp index 9424356a8b5..ab5d22e45e4 100644 --- a/layout/svg/nsSVGTextFrame.cpp +++ b/layout/svg/nsSVGTextFrame.cpp @@ -12,6 +12,7 @@ #include "nsISVGGlyphFragmentNode.h" #include "nsSVGGlyphFrame.h" #include "nsSVGIntegrationUtils.h" +#include "nsSVGPathElement.h" #include "nsSVGTextPathFrame.h" #include "nsSVGUtils.h" #include "SVGGraphicsElement.h" diff --git a/layout/svg/nsSVGTextPathFrame.cpp b/layout/svg/nsSVGTextPathFrame.cpp index 2de7ce4b513..a30d7a98f6f 100644 --- a/layout/svg/nsSVGTextPathFrame.cpp +++ b/layout/svg/nsSVGTextPathFrame.cpp @@ -10,7 +10,7 @@ #include "nsContentUtils.h" #include "nsSVGEffects.h" #include "nsSVGLength2.h" -#include "mozilla/dom/SVGPathElement.h" +#include "nsSVGPathElement.h" #include "mozilla/dom/SVGTextPathElement.h" #include "SVGLengthList.h" @@ -144,8 +144,8 @@ nsSVGTextPathFrame::GetOffsetScale() if (!pathFrame) return 1.0; - return static_cast(pathFrame->GetContent())-> - GetPathLengthScale(SVGPathElement::eForTextPath); + return static_cast(pathFrame->GetContent())-> + GetPathLengthScale(nsSVGPathElement::eForTextPath); } //---------------------------------------------------------------------- diff --git a/layout/svg/nsSVGUtils.cpp b/layout/svg/nsSVGUtils.cpp index 231dc865207..f42910dbd40 100644 --- a/layout/svg/nsSVGUtils.cpp +++ b/layout/svg/nsSVGUtils.cpp @@ -44,7 +44,7 @@ #include "nsSVGLength2.h" #include "nsSVGMaskFrame.h" #include "nsSVGOuterSVGFrame.h" -#include "mozilla/dom/SVGPathElement.h" +#include "nsSVGPathElement.h" #include "nsSVGPathGeometryElement.h" #include "nsSVGPathGeometryFrame.h" #include "nsSVGPaintServerFrame.h" @@ -1733,8 +1733,8 @@ GetStrokeDashData(nsIFrame* aFrame, gfxFloat pathScale = 1.0; if (content->Tag() == nsGkAtoms::path) { - pathScale = static_cast(content)-> - GetPathLengthScale(SVGPathElement::eForStroking); + pathScale = static_cast(content)-> + GetPathLengthScale(nsSVGPathElement::eForStroking); if (pathScale <= 0) { return false; } diff --git a/widget/tests/TestWinTSF.cpp b/widget/tests/TestWinTSF.cpp index 542e4dc4232..e9f4cc04991 100644 --- a/widget/tests/TestWinTSF.cpp +++ b/widget/tests/TestWinTSF.cpp @@ -59,7 +59,7 @@ template class nsReadingIterator; #include "nsIWebProgressListener.h" #include "nsIInterfaceRequestorUtils.h" #include "nsIDOMHTMLDocument.h" -#include "mozilla/dom/HTMLBodyElement.h" +#include "nsIDOMHTMLBodyElement.h" #include "nsIDOMHTMLElement.h" #include "nsIDOMHTMLInputElement.h" #include "nsIDOMHTMLTextAreaElement.h" @@ -1575,7 +1575,7 @@ TestApp::Init(void) // set a background color manually, // otherwise the window might be transparent - static_cast(htmlBody)-> + nsCOMPtr(do_QueryInterface(htmlBody))-> SetBgColor(NS_LITERAL_STRING("white")); widget->Show(true);