mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
1283 lines
59 KiB
HTML
1283 lines
59 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=766694
|
|
-->
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Test for Bug 766694</title>
|
|
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
</head>
|
|
<body>
|
|
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=766694">Mozilla Bug 766694</a>
|
|
<p id="display"></p>
|
|
<div id="content" style="display: none">
|
|
|
|
</div>
|
|
<pre id="test">
|
|
<script type="application/javascript">
|
|
|
|
/** Test for Bug 766694 **/
|
|
|
|
// This is a list of all interfaces that are exposed to every webpage.
|
|
// Please only add things to this list with great care and proper review
|
|
// from the associated module peers.
|
|
|
|
// This file lists global interfaces we want exposed and verifies they
|
|
// are what we intend. Each entry in the arrays below can either be a
|
|
// simple string with the interface name, or an object with a 'name'
|
|
// property giving the interface name as a string, and additional
|
|
// properties which quality the exposure of that interface. For example:
|
|
//
|
|
// [
|
|
// "AGlobalInterface",
|
|
// {name: "ExperimentalThing", release: false},
|
|
// {name: "OptionalThing", pref: "some.thing.enabled"},
|
|
// {name: "FancyControl", xbl: true},
|
|
// ];
|
|
//
|
|
// See createInterfaceMap() below for a complete list of properties.
|
|
|
|
// IMPORTANT: Do not change this list without review from
|
|
// a JavaScript Engine peer!
|
|
var ecmaGlobals =
|
|
[
|
|
"Array",
|
|
"ArrayBuffer",
|
|
"Boolean",
|
|
"DataView",
|
|
"Date",
|
|
"Error",
|
|
"EvalError",
|
|
"Float32Array",
|
|
"Float64Array",
|
|
"Function",
|
|
// NB: We haven't bothered to resolve constants like Infinity and NaN on
|
|
// Xrayed windows (which are seen from the XBL scope). We could support
|
|
// this if needed with some refactoring.
|
|
{name: "Infinity", xbl: false},
|
|
"Int16Array",
|
|
"Int32Array",
|
|
"Int8Array",
|
|
"InternalError",
|
|
{name: "Intl", desktop: true},
|
|
"Iterator",
|
|
"JSON",
|
|
"Map",
|
|
"Math",
|
|
{name: "NaN", xbl: false},
|
|
"Number",
|
|
"Object",
|
|
"Proxy",
|
|
"RangeError",
|
|
"ReferenceError",
|
|
"RegExp",
|
|
"Set",
|
|
{name: "SharedArrayBuffer", nightly: true},
|
|
{name: "SIMD", nightly: true},
|
|
"StopIteration",
|
|
"String",
|
|
"SyntaxError",
|
|
{name: "TypedObject", nightly: true},
|
|
"TypeError",
|
|
"Uint16Array",
|
|
"Uint32Array",
|
|
"Uint8Array",
|
|
"Uint8ClampedArray",
|
|
"URIError",
|
|
"WeakMap",
|
|
];
|
|
// IMPORTANT: Do not change the list above without review from
|
|
// a JavaScript Engine peer!
|
|
|
|
// IMPORTANT: Do not change the list below without review from a DOM peer,
|
|
// except to remove items from it!
|
|
//
|
|
// This is a list of interfaces that were prefixed with 'moz' instead of 'Moz'.
|
|
// We should never to that again, interfaces in the DOM start with an uppercase
|
|
// letter. If you think you need to add an interface here, DON'T. Rename your
|
|
// interface.
|
|
var legacyMozPrefixedInterfaces =
|
|
[
|
|
"mozContact",
|
|
"mozRTCIceCandidate",
|
|
"mozRTCPeerConnection",
|
|
"mozRTCSessionDescription",
|
|
];
|
|
// IMPORTANT: Do not change the list above without review from a DOM peer,
|
|
// except to remove items from it!
|
|
|
|
// IMPORTANT: Do not change the list below without review from a DOM peer!
|
|
var interfaceNamesInGlobalScope =
|
|
[
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AnalyserNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AnimationEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Attr",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Audio",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioBuffer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "AudioChannelManager", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioContext",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioBufferSourceNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioDestinationNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioListener",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioParam",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioProcessingEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"AudioStreamTrack",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"BarProp",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"BatteryManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"BeforeUnloadEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"BiquadFilterNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Blob",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"BlobEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BluetoothAdapter", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BluetoothDevice", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BluetoothDeviceEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BluetoothManager", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BluetoothStatusChangedEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BoxObject", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "BrowserFeedWriter", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "CallEvent", b2g: true, pref: "dom.telephony.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "CallGroupErrorEvent", b2g: true, pref: "dom.telephony.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CameraCapabilities",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CameraControl",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CameraManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CanvasGradient",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CanvasPattern",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CanvasRenderingContext2D",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CaretPosition",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CDATASection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "CFStateChangeEvent", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ChannelMergerNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ChannelSplitterNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CharacterData",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "ChromeWindow", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ClipboardEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CloseEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CommandEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Comment",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CompositionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Controllers",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ConvolverNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Crypto",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSS",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSS2Properties",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSCharsetRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSConditionRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSFontFaceRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "CSSFontFeatureValuesRule", release: false},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSGroupingRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSImportRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSMediaRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSMozDocumentRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSNameSpaceRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSPageRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSPrimitiveValue",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSRuleList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSStyleDeclaration",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSStyleRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSStyleSheet",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSSupportsRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSValue",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CSSValueList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"CustomEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DataChannel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DataContainerEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "DataErrorEvent", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "DataStore", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "DataStoreChangeEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "DataStoreCursor", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DataTransfer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DelayNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DesktopNotification",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DesktopNotificationCenter",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceLightEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceMotionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceOrientationEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceProximityEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceStorage",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DeviceStorageChangeEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Document",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DocumentFragment",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DocumentType",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "DOMConstructor", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMCursor",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMError",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMException",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMImplementation",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMMMIError",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMParser",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMRect",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMRectList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMSettableTokenList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMStringList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMStringMap",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMTokenList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DOMTransactionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DragEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"DynamicsCompressorNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Element",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ElementReplaceEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ErrorEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Event",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"EventListenerInfo",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"EventSource",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"EventTarget",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"File",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FileHandle",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FileList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FileReader",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FileRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "FMRadio", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FocusEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"FormData",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"GainNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "Gamepad", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "GamepadAxisMoveEvent", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "GamepadButtonEvent", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "GamepadButton", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "GamepadEvent", desktop: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HashChangeEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"History",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLAnchorElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLAppletElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLAreaElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLAudioElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLBaseElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLBodyElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLBRElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLButtonElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLCanvasElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLCollection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLContentElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDataElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDataListElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDirectoryElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDivElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDListElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLDocument",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLEmbedElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFieldSetElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFontElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFormControlsCollection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFormElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFrameElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLFrameSetElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLHeadElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLHeadingElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLHRElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLHtmlElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLIFrameElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLImageElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLInputElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLLabelElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLLegendElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLLIElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLLinkElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMapElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMediaElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMenuElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMenuItemElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMetaElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLMeterElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLModElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLObjectElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLOListElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLOptGroupElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLOptionElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLOptionsCollection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLOutputElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLParagraphElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLParamElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLPreElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLProgressElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLPropertiesCollection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLQuoteElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLScriptElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLSelectElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLShadowElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLSourceElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLSpanElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLStyleElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableCaptionElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableCellElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableColElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableRowElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTableSectionElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTemplateElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTextAreaElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTimeElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTitleElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLTrackElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLUListElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLUnknownElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"HTMLVideoElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "IccChangeEvent", b2g: true, pref: "dom.icc.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "IccCardLockError", b2g: true, pref: "dom.icc.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBCursor",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBCursorWithValue",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBDatabase",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBFactory",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBFileHandle",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBIndex",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBKeyRange",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBObjectStore",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBOpenDBRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBTransaction",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"IDBVersionChangeEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Image",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ImageData",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "InstallTrigger", b2g: false, xbl: false},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"KeyEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"KeyboardEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"LocalMediaStream",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Location",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"LockedFile",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaElementAudioSourceNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaError",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaQueryList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaRecorder",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaStream",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaStreamAudioDestinationNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaStreamAudioSourceNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MediaStreamEvent", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MediaStreamTrack",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MessageEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MessagePort",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MimeType",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MimeTypeArray",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ModalContentWindow",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MouseEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MouseScrollEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozActivity", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozApplicationEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozCellBroadcast", b2g: true, pref: "dom.cellbroadcast.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozCellBroadcastEvent", b2g: true, pref: "dom.cellbroadcast.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"mozContact",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozContactChangeEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozCSSKeyframeRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozCSSKeyframesRule",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozEmergencyCbModeEvent", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozIcc", b2g: true, pref: "dom.icc.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozIccManager", b2g: true, pref: "dom.icc.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozInputContext", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozInputMethodManager", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozMmsEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozMmsMessage",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozMobileConnection", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozMobileConnectionArray", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozMobileMessageManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozMobileMessageThread",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozNamedAttrMap",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozNDEFRecord", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozNFCPeer", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozNFCTag", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozOtaStatusEvent", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozPowerManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "mozRTCIceCandidate", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "mozRTCPeerConnection", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "mozRTCSessionDescription", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozSettingsEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozSmsEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozSmsFilter",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozSmsMessage",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MozSmsSegmentInfo",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozSpeakerManager", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozStkCommandEvent", b2g: true, pref: "dom.icc.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozTimeManager", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozVoicemail", b2g: true, pref: "dom.voicemail.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozVoicemailEvent", b2g: true, pref: "dom.voicemail.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWakeLock", b2g: true, pref: "dom.wakelock.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWifiConnectionInfoEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWifiStatusChangeEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWifiP2pGroupOwner", b2g: true, permission: "wifi-manage"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWifiP2pManager", b2g: true, permission: "wifi-manage"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "MozWifiP2pStatusChangeEvent", b2g: true, permission: "wifi-manage"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MutationEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MutationObserver",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"MutationRecord",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Navigator",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Node",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"NodeFilter",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"NodeIterator",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"NodeList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"NotifyAudioAvailableEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Notification",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"NotifyPaintEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"OfflineAudioCompletionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"OfflineAudioContext",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"OfflineResourceList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Option",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"OscillatorNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PageTransitionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PaintRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PaintRequestList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PannerNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Performance",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PerformanceNavigation",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PerformanceTiming",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PeriodicWave",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PhoneNumberService",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Plugin",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PluginArray",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "PointerEvent", pref: "dom.w3c_pointer_events.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PopStateEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PopupBlockedEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ProcessingInstruction",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ProgressEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Promise",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"PropertyNodeList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Range",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"RecordErrorEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Rect",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"RGBColor",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "RTCDataChannelEvent", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "RTCPeerConnectionIceEvent", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "RTCStatsReport", pref: "media.peerconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Screen",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ScriptProcessorNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ScrollAreaEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Selection",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SettingsLock",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SettingsManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "ShadowRoot", pref: "dom.webcomponents.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SharedWorker", pref: "dom.workers.sharedWorkers.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SimpleGestureEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SimpleTest", xbl: false},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SmartCardEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SpeechSynthesisEvent", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SpeechSynthesis", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SpeechSynthesisUtterance", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SpeechSynthesisVoice", b2g: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "SpecialPowers", xbl: false},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Storage",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"StorageEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"StyleSheet",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"StyleSheetList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAltGlyphElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAngle",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedAngle",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedBoolean",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedEnumeration",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedInteger",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedLength",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedLengthList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedNumber",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedNumberList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedPreserveAspectRatio",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedRect",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedString",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimatedTransformList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimateElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimateMotionElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimateTransformElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGAnimationElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGCircleElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGClipPathElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGComponentTransferFunctionElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGDefsElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGDescElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGDocument",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGEllipseElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEBlendElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEColorMatrixElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEComponentTransferElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFECompositeElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEConvolveMatrixElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEDiffuseLightingElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEDisplacementMapElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEDistantLightElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEDropShadowElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEFloodElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEFuncAElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEFuncBElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEFuncGElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEFuncRElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEGaussianBlurElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEImageElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEMergeElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEMergeNodeElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEMorphologyElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEOffsetElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFEPointLightElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFESpecularLightingElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFESpotLightElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFETileElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFETurbulenceElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGFilterElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGForeignObjectElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGGElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGGradientElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGGraphicsElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGImageElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGLength",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGLengthList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGLinearGradientElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGLineElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGMarkerElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGMaskElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGMatrix",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGMetadataElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGMPathElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGNumber",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGNumberList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSeg",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegArcAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegArcRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegClosePath",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoCubicAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoCubicRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoCubicSmoothAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoCubicSmoothRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoQuadraticAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoQuadraticRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoQuadraticSmoothAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegCurvetoQuadraticSmoothRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoHorizontalAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoHorizontalRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoVerticalAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegLinetoVerticalRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegMovetoAbs",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPathSegMovetoRel",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPatternElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPoint",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPointList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPolygonElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPolylineElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGPreserveAspectRatio",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGRadialGradientElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGRect",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGRectElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGScriptElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGSetElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGStopElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGStringList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGStyleElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGSVGElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGSwitchElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGSymbolElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTextContentElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTextElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTextPathElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTextPositioningElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTitleElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTransform",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTransformList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGTSpanElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGUnitTypes",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGUseElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGViewElement",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGZoomAndPan",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"SVGZoomEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "Telephony", b2g: true, pref: "dom.telephony.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TelephonyCall", b2g: true, pref: "dom.telephony.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TelephonyCallGroup", b2g: true, pref: "dom.telephony.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Text",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextDecoder",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextEncoder",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextMetrics",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextTrack",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextTrackCueList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TextTrackList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TimeEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TimeRanges",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Touch",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TouchEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TouchList",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TrackEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TransitionEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TreeColumn", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TreeColumns", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TreeContentView", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "TreeSelection", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"TreeWalker",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"UIEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"UndoManager",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"URL",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"URLSearchParams",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "UserDataHandler", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"UserProximityEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "USSDReceivedEvent", b2g: true, pref: "dom.mobileconnection.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"ValidityState",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"VideoStreamTrack",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"VTTCue",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "VTTRegion", pref: "media.webvtt.regions.enabled"},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WaveShaperNode",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLActiveInfo",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLBuffer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLFramebuffer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLProgram",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLRenderbuffer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLRenderingContext",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLShader",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLShaderPrecisionFormat",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLTexture",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLUniformLocation",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebGLVertexArray",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WebSocket",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WheelEvent",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Window",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"WindowUtils",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"Worker",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XMLDocument",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XMLHttpRequest",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XMLHttpRequestUpload",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XMLSerializer",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XMLStylesheetProcessingInstruction",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XPathEvaluator",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XPathExpression",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XPathNamespace",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XPathNSResolver",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XPathResult",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
"XSLTProcessor",
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULButtonElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULCheckboxElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULCommandDispatcher", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULCommandEvent", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULControlElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULControllers", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULDocument", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULLabeledControlElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULPopupElement", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULTemplateBuilder", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
{name: "XULTreeBuilder", xbl: true},
|
|
// IMPORTANT: Do not change this list without review from a DOM peer!
|
|
];
|
|
// IMPORTANT: Do not change the list above without review from a DOM peer!
|
|
|
|
function createInterfaceMap(isXBLScope) {
|
|
var prefs = SpecialPowers.Services.prefs;
|
|
var version = SpecialPowers.Cc["@mozilla.org/xre/app-info;1"].getService(SpecialPowers.Ci.nsIXULAppInfo).version;
|
|
var isNightly = version.endsWith("a1");
|
|
var isRelease = !version.contains("a");
|
|
var isDesktop = !/Mobile|Tablet/.test(navigator.userAgent);
|
|
var isB2G = !isDesktop && !navigator.userAgent.contains("Android");
|
|
var hasPermission = function (aPermission) {
|
|
return SpecialPowers.hasPermission(aPermission, window.document);
|
|
};
|
|
|
|
var interfaceMap = {};
|
|
|
|
function addInterfaces(interfaces, shouldExpect)
|
|
{
|
|
for (var entry of interfaces) {
|
|
if (typeof(entry) === "string") {
|
|
interfaceMap[entry] = shouldExpect;
|
|
} else if ((entry.nightly === !isNightly) ||
|
|
(entry.xbl === !isXBLScope) ||
|
|
(entry.desktop === !isDesktop) ||
|
|
(entry.b2g === !isB2G) ||
|
|
(entry.release === !isRelease) ||
|
|
(entry.pref && !prefs.getBoolPref(entry.pref)) ||
|
|
(entry.permission && !hasPermission(entry.permission))) {
|
|
interfaceMap[entry.name] = false;
|
|
} else {
|
|
interfaceMap[entry.name] = shouldExpect;
|
|
}
|
|
}
|
|
}
|
|
|
|
addInterfaces(ecmaGlobals, true);
|
|
addInterfaces(interfaceNamesInGlobalScope, true);
|
|
|
|
return interfaceMap;
|
|
}
|
|
|
|
function runTest(isXBLScope) {
|
|
var interfaceMap = createInterfaceMap(isXBLScope);
|
|
for (var name of Object.getOwnPropertyNames(window)) {
|
|
// An interface name should start with an upper case character.
|
|
// However, we have a couple of legacy interfaces that start with 'moz', so
|
|
// we want to allow those until we can remove them.
|
|
if (!/^[A-Z]/.test(name) && legacyMozPrefixedInterfaces.indexOf(name) < 0) {
|
|
continue;
|
|
}
|
|
ok(interfaceMap[name],
|
|
"If this is failing: DANGER, are you sure you want to expose the new interface " + name +
|
|
" to all webpages as a property on the window? Do not make a change to this file without a " +
|
|
" review from a DOM peer for that specific change!!! (or a JS peer for changes to ecmaGlobals)");
|
|
delete interfaceMap[name];
|
|
}
|
|
for (var name of Object.keys(interfaceMap)) {
|
|
ok(name in window === interfaceMap[name],
|
|
name + " should " + (interfaceMap[name] ? "" : " NOT") + " be defined on the " + (isXBLScope ? "XBL" : "global") +" scope");
|
|
if (!interfaceMap[name]) {
|
|
delete interfaceMap[name];
|
|
}
|
|
}
|
|
if (isXBLScope) {
|
|
todo_is(Object.keys(interfaceMap).length, 0,
|
|
"The following interface(s) are not enumerated: " + Object.keys(interfaceMap).join(", "));
|
|
} else {
|
|
is(Object.keys(interfaceMap).length, 0,
|
|
"The following interface(s) are not enumerated: " + Object.keys(interfaceMap).join(", "));
|
|
}
|
|
}
|
|
|
|
runTest(false);
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
</script>
|
|
<span id="span" style="-moz-binding: url(file_interfaces.xml)"></span>
|
|
</pre>
|
|
</body>
|
|
</html>
|