diff --git a/content/svg/content/src/nsSVGElement.cpp b/content/svg/content/src/nsSVGElement.cpp index ad2f3944ff85..d7fd23bf8859 100644 --- a/content/svg/content/src/nsSVGElement.cpp +++ b/content/svg/content/src/nsSVGElement.cpp @@ -88,6 +88,12 @@ nsSVGElement::WrapNode(JSContext *aCx, JSObject *aScope, bool *aTriedToWrap) return SVGElementBinding::Wrap(aCx, aScope, this, aTriedToWrap); } +bool +nsSVGElement::PrefEnabled() +{ + return nsGenericHTMLElement::PrefEnabled(); +} + //---------------------------------------------------------------------- /* readonly attribute nsIDOMSVGAnimatedString className; */ diff --git a/content/svg/content/src/nsSVGElement.h b/content/svg/content/src/nsSVGElement.h index c96a890bdd6e..46b43e584431 100644 --- a/content/svg/content/src/nsSVGElement.h +++ b/content/svg/content/src/nsSVGElement.h @@ -302,6 +302,7 @@ public: nsSVGElement* GetViewportElement(); already_AddRefed ClassName(); already_AddRefed GetPresentationAttribute(const nsAString& aName, mozilla::ErrorResult& rv); + static bool PrefEnabled(); protected: virtual JSObject* WrapNode(JSContext *cx, JSObject *scope, bool *triedToWrap); diff --git a/dom/webidl/SVGElement.webidl b/dom/webidl/SVGElement.webidl index e5d7f2fd7951..25bb7f4be5c7 100644 --- a/dom/webidl/SVGElement.webidl +++ b/dom/webidl/SVGElement.webidl @@ -12,6 +12,7 @@ interface SVGAnimatedString; +[PrefControlled] interface SVGElement : Element { attribute DOMString id; /* [SetterThrows] @@ -32,4 +33,147 @@ interface SVGElement : Element { [Throws] readonly attribute SVGSVGElement? ownerSVGElement; readonly attribute SVGElement? viewportElement; + + // event handler IDL attributes + [SetterThrows] + attribute EventHandler onabort; + [SetterThrows] + attribute EventHandler onblur; + //[SetterThrows] + // attribute EventHandler oncancel; + [SetterThrows] + attribute EventHandler oncanplay; + [SetterThrows] + attribute EventHandler oncanplaythrough; + [SetterThrows] + attribute EventHandler onchange; + [SetterThrows] + attribute EventHandler onclick; + //[SetterThrows] + // attribute EventHandler onclose; + [SetterThrows] + attribute EventHandler oncontextmenu; + //[SetterThrows] + // attribute EventHandler oncuechange; + [SetterThrows] + attribute EventHandler ondblclick; + [SetterThrows] + attribute EventHandler ondrag; + [SetterThrows] + attribute EventHandler ondragend; + [SetterThrows] + attribute EventHandler ondragenter; + [SetterThrows] + attribute EventHandler ondragleave; + [SetterThrows] + attribute EventHandler ondragover; + [SetterThrows] + attribute EventHandler ondragstart; + [SetterThrows] + attribute EventHandler ondrop; + [SetterThrows] + attribute EventHandler ondurationchange; + [SetterThrows] + attribute EventHandler onemptied; + [SetterThrows] + attribute EventHandler onended; + // We think the spec is wrong here. + // attribute OnErrorEventHandler onerror; + [SetterThrows] + attribute EventHandler onerror; + [SetterThrows] + attribute EventHandler onfocus; + [SetterThrows] + attribute EventHandler oninput; + [SetterThrows] + attribute EventHandler oninvalid; + [SetterThrows] + attribute EventHandler onkeydown; + [SetterThrows] + attribute EventHandler onkeypress; + [SetterThrows] + attribute EventHandler onkeyup; + [SetterThrows] + attribute EventHandler onload; + [SetterThrows] + attribute EventHandler onloadeddata; + [SetterThrows] + attribute EventHandler onloadedmetadata; + [SetterThrows] + attribute EventHandler onloadstart; + [SetterThrows] + attribute EventHandler onmousedown; + [SetterThrows] + attribute EventHandler onmousemove; + [SetterThrows] + attribute EventHandler onmouseout; + [SetterThrows] + attribute EventHandler onmouseover; + [SetterThrows] + attribute EventHandler onmouseup; + //[SetterThrows] + // attribute EventHandler onmousewheel; + [SetterThrows] + attribute EventHandler onpause; + [SetterThrows] + attribute EventHandler onplay; + [SetterThrows] + attribute EventHandler onplaying; + [SetterThrows] + attribute EventHandler onprogress; + [SetterThrows] + attribute EventHandler onratechange; + [SetterThrows] + attribute EventHandler onreset; + [SetterThrows] + attribute EventHandler onscroll; + [SetterThrows] + attribute EventHandler onseeked; + [SetterThrows] + attribute EventHandler onseeking; + [SetterThrows] + attribute EventHandler onselect; + [SetterThrows] + attribute EventHandler onshow; + [SetterThrows] + attribute EventHandler onstalled; + [SetterThrows] + attribute EventHandler onsubmit; + [SetterThrows] + attribute EventHandler onsuspend; + [SetterThrows] + attribute EventHandler ontimeupdate; + [SetterThrows] + attribute EventHandler onvolumechange; + [SetterThrows] + attribute EventHandler onwaiting; + + [SetterThrows] + attribute EventHandler onmozfullscreenchange; + [SetterThrows] + attribute EventHandler onmozfullscreenerror; + [SetterThrows] + attribute EventHandler onmozpointerlockchange; + [SetterThrows] + attribute EventHandler onmozpointerlockerror; + + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchstart; + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchend; + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchmove; + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchenter; + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchleave; + [SetterThrows,Pref="dom.w3c_touch_events.expose"] + attribute EventHandler ontouchcancel; + + [SetterThrows] + attribute EventHandler oncopy; + [SetterThrows] + attribute EventHandler oncut; + [SetterThrows] + attribute EventHandler onpaste; };