1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813
|
/*
* Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
* Copyright (C) 2011 Google Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
[
CheckSecurity,
JSCustomDefineOwnProperty,
CustomDeleteProperty,
CustomGetOwnPropertySlot,
CustomEnumerateProperty,
JSCustomMarkFunction,
JSCustomToNativeObject,
CustomPutFunction,
EventTarget,
ExtendsDOMGlobalObject,
JSGenerateToNativeObject,
ReplaceableConstructor,
JSLegacyParent=JSDOMWindowBase,
V8CustomToJSObject,
V8NoWrapperCache,
InterfaceName=Window
] interface DOMWindow {
// DOM Level 0
[Replaceable] readonly attribute Screen screen;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute History history;
[Replaceable] readonly attribute BarInfo locationbar;
[Replaceable] readonly attribute BarInfo menubar;
[Replaceable] readonly attribute BarInfo personalbar;
[Replaceable] readonly attribute BarInfo scrollbars;
[Replaceable] readonly attribute BarInfo statusbar;
[Replaceable] readonly attribute BarInfo toolbar;
[Replaceable] readonly attribute Navigator navigator;
[Replaceable] readonly attribute Navigator clientInformation;
readonly attribute Crypto crypto;
#if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
attribute [DoNotCheckSecurity, CustomSetter, V8Unforgeable] Location location;
#endif
[Replaceable, CustomGetter, V8CustomSetter] readonly attribute Event event;
DOMSelection getSelection();
readonly attribute [CheckSecurityForNode] Element frameElement;
[DoNotCheckSecurity, CallWith=ScriptExecutionContext] void focus();
[DoNotCheckSecurity] void blur();
[DoNotCheckSecurity, CallWith=ScriptExecutionContext] void close();
void print();
void stop();
[Custom] DOMWindow open(in DOMString url,
in DOMString name,
in [Optional] DOMString options);
[Custom] DOMObject showModalDialog(in DOMString url,
in [Optional] DOMObject dialogArgs,
in [Optional] DOMString featureArgs);
void alert(in [Optional=DefaultIsUndefined] DOMString message);
boolean confirm(in [Optional=DefaultIsUndefined] DOMString message);
[TreatReturnedNullStringAs=Null] DOMString prompt(in [Optional=DefaultIsUndefined] DOMString message,
in [TreatNullAs=NullString, TreatUndefinedAs=NullString,Optional=DefaultIsUndefined] DOMString defaultValue);
boolean find(in [Optional=DefaultIsUndefined] DOMString string,
in [Optional=DefaultIsUndefined] boolean caseSensitive,
in [Optional=DefaultIsUndefined] boolean backwards,
in [Optional=DefaultIsUndefined] boolean wrap,
in [Optional=DefaultIsUndefined] boolean wholeWord,
in [Optional=DefaultIsUndefined] boolean searchInFrames,
in [Optional=DefaultIsUndefined] boolean showDialog);
[Replaceable] readonly attribute boolean offscreenBuffering;
[Replaceable] readonly attribute long outerHeight;
[Replaceable] readonly attribute long outerWidth;
[Replaceable] readonly attribute long innerHeight;
[Replaceable] readonly attribute long innerWidth;
[Replaceable] readonly attribute long screenX;
[Replaceable] readonly attribute long screenY;
[Replaceable] readonly attribute long screenLeft;
[Replaceable] readonly attribute long screenTop;
[Replaceable] readonly attribute long scrollX;
[Replaceable] readonly attribute long scrollY;
readonly attribute long pageXOffset;
readonly attribute long pageYOffset;
void scrollBy(in [Optional=DefaultIsUndefined] long x, in [Optional=DefaultIsUndefined] long y);
void scrollTo(in [Optional=DefaultIsUndefined] long x, in [Optional=DefaultIsUndefined] long y);
void scroll(in [Optional=DefaultIsUndefined] long x, in [Optional=DefaultIsUndefined] long y);
void moveBy(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); // FIXME: this should take longs not floats.
void moveTo(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); // FIXME: this should take longs not floats.
void resizeBy(in [Optional=DefaultIsUndefined] float x, in [Optional=DefaultIsUndefined] float y); // FIXME: this should take longs not floats.
void resizeTo(in [Optional=DefaultIsUndefined] float width, in [Optional=DefaultIsUndefined] float height); // FIXME: this should take longs not floats.
readonly attribute [DoNotCheckSecurity] boolean closed;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute unsigned long length;
attribute DOMString name;
attribute DOMString status;
attribute DOMString defaultStatus;
#if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
// This attribute is an alias of defaultStatus and is necessary for legacy uses.
attribute DOMString defaultstatus;
#endif
// Self referential attributes
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow self;
[DoNotCheckSecurity, V8Unforgeable] readonly attribute DOMWindow window;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow frames;
[Replaceable, DoNotCheckSecurityOnGetter, V8CustomSetter] readonly attribute DOMWindow opener;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow parent;
[DoNotCheckSecurityOnGetter, V8Unforgeable] readonly attribute DOMWindow top;
// DOM Level 2 AbstractView Interface
readonly attribute Document document;
// CSSOM View Module
MediaQueryList matchMedia(in DOMString query);
// styleMedia has been removed from the CSSOM View specification.
readonly attribute StyleMedia styleMedia;
// DOM Level 2 Style Interface
CSSStyleDeclaration getComputedStyle(in [Optional=DefaultIsUndefined] Element element,
in [TreatNullAs=NullString, TreatUndefinedAs=NullString,Optional=DefaultIsUndefined] DOMString pseudoElement);
// WebKit extensions
#if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
CSSRuleList getMatchedCSSRules(in [Optional=DefaultIsUndefined] Element element,
in [TreatNullAs=NullString, TreatUndefinedAs=NullString,Optional=DefaultIsUndefined] DOMString pseudoElement);
#endif
[Replaceable] readonly attribute double devicePixelRatio;
WebKitPoint webkitConvertPointFromPageToNode(in [Optional=DefaultIsUndefined] Node node,
in [Optional=DefaultIsUndefined] WebKitPoint p);
WebKitPoint webkitConvertPointFromNodeToPage(in [Optional=DefaultIsUndefined] Node node,
in [Optional=DefaultIsUndefined] WebKitPoint p);
readonly attribute [V8EnabledAtRuntime] DOMApplicationCache applicationCache;
readonly attribute [V8EnabledAtRuntime] Storage sessionStorage
getter raises(DOMException);
readonly attribute [V8EnabledAtRuntime] Storage localStorage
getter raises(DOMException);
#if defined(ENABLE_ORIENTATION_EVENTS) && ENABLE_ORIENTATION_EVENTS
// This is the interface orientation in degrees. Some examples are:
// 0 is straight up; -90 is when the device is rotated 90 clockwise;
// 90 is when rotated counter clockwise.
readonly attribute long orientation;
#endif
[Replaceable] readonly attribute Console console;
// cross-document messaging
#if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
[DoNotCheckSecurity, Custom] void postMessage(in SerializedScriptValue message, in DOMString targetOrigin)
raises(DOMException);
[DoNotCheckSecurity, Custom] void postMessage(in SerializedScriptValue message, in DOMString targetOrigin, in Array messagePorts)
raises(DOMException);
#if defined(ENABLE_LEGACY_VENDOR_PREFIXES) && ENABLE_LEGACY_VENDOR_PREFIXES
[DoNotCheckSecurity, Custom] void webkitPostMessage(in SerializedScriptValue message, in DOMString targetOrigin)
raises(DOMException);
[DoNotCheckSecurity, Custom] void webkitPostMessage(in SerializedScriptValue message, in DOMString targetOrigin, in Array transferList)
raises(DOMException);
#endif // defined(ENABLE_LEGACY_VENDOR_PREFIXES) && ENABLE_LEGACY_VENDOR_PREFIXES
#else
// There's no good way to expose an array via the ObjC bindings, so for now just allow passing in a single port.
[DoNotCheckSecurity, Custom] void postMessage(in SerializedScriptValue message, in [Optional] MessagePort messagePort, in DOMString targetOrigin)
raises(DOMException);
#endif
#if defined(ENABLE_WEB_TIMING) && ENABLE_WEB_TIMING
[Replaceable] readonly attribute Performance performance;
#endif
// Timers
[Custom] long setTimeout(in [Optional=DefaultIsUndefined] TimeoutHandler handler,
in [Optional=DefaultIsUndefined] long timeout);
// [Custom] long setTimeout(in TimeoutHandler handler, in long timeout, arguments...);
// [Custom] long setTimeout(in DOMString code, in long timeout);
void clearTimeout(in [Optional=DefaultIsUndefined] long handle);
[Custom] long setInterval(in TimeoutHandler handler, in long timeout);
// [Custom] long setInterval(in TimeoutHandler handler, in long timeout, arguments...);
// [Custom] long setInterval(in DOMString code, in long timeout);
void clearInterval(in [Optional=DefaultIsUndefined] long handle);
#if defined(ENABLE_REQUEST_ANIMATION_FRAME) && ENABLE_REQUEST_ANIMATION_FRAME
[V8MeasureAs=UnprefixedRequestAnimationFrame] long requestAnimationFrame(in [Callback] RequestAnimationFrameCallback callback);
void cancelAnimationFrame(in long id);
[ImplementedAs=requestAnimationFrame, V8MeasureAs=PrefixedRequestAnimationFrame] long webkitRequestAnimationFrame(in [Callback] RequestAnimationFrameCallback callback);
[ImplementedAs=cancelAnimationFrame] void webkitCancelAnimationFrame(in long id);
[ImplementedAs=cancelAnimationFrame] void webkitCancelRequestAnimationFrame(in long id); // This is a deprecated alias for webkitCancelAnimationFrame(). Remove this when removing vendor prefix.
#endif
// Base64
DOMString atob(in [TreatNullAs=NullString,Optional=DefaultIsUndefined] DOMString string)
raises(DOMException);
DOMString btoa(in [TreatNullAs=NullString,Optional=DefaultIsUndefined] DOMString string)
raises(DOMException);
// Events
attribute EventListener onabort;
attribute EventListener onbeforeunload;
attribute EventListener onblur;
attribute EventListener oncanplay;
attribute EventListener oncanplaythrough;
attribute EventListener onchange;
attribute EventListener onclick;
attribute EventListener oncontextmenu;
attribute EventListener ondblclick;
attribute EventListener ondrag;
attribute EventListener ondragend;
attribute EventListener ondragenter;
attribute EventListener ondragleave;
attribute EventListener ondragover;
attribute EventListener ondragstart;
attribute EventListener ondrop;
attribute EventListener ondurationchange;
attribute EventListener onemptied;
attribute EventListener onended;
attribute EventListener onerror;
attribute EventListener onfocus;
attribute EventListener onhashchange;
attribute EventListener oninput;
attribute EventListener oninvalid;
attribute EventListener onkeydown;
attribute EventListener onkeypress;
attribute EventListener onkeyup;
attribute EventListener onload;
attribute EventListener onloadeddata;
attribute EventListener onloadedmetadata;
attribute EventListener onloadstart;
attribute EventListener onmessage;
attribute EventListener onmousedown;
attribute EventListener onmousemove;
attribute EventListener onmouseout;
attribute EventListener onmouseover;
attribute EventListener onmouseup;
attribute EventListener onmousewheel;
attribute EventListener onoffline;
attribute EventListener ononline;
attribute EventListener onpagehide;
attribute EventListener onpageshow;
attribute EventListener onpause;
attribute EventListener onplay;
attribute EventListener onplaying;
attribute EventListener onpopstate;
attribute EventListener onprogress;
attribute EventListener onratechange;
attribute EventListener onresize;
attribute EventListener onscroll;
attribute EventListener onseeked;
attribute EventListener onseeking;
attribute EventListener onselect;
attribute EventListener onstalled;
attribute EventListener onstorage;
attribute EventListener onsubmit;
attribute EventListener onsuspend;
attribute EventListener ontimeupdate;
attribute EventListener onunload;
attribute EventListener onvolumechange;
attribute EventListener onwaiting;
// Not implemented yet.
// attribute EventListener onafterprint;
// attribute EventListener onbeforeprint;
// attribute EventListener onreadystatechange;
// attribute EventListener onredo;
// attribute EventListener onshow;
// attribute EventListener onundo;
// Webkit extensions
attribute EventListener onreset;
attribute EventListener onsearch;
attribute EventListener onwebkitanimationend;
attribute EventListener onwebkitanimationiteration;
attribute EventListener onwebkitanimationstart;
attribute EventListener onwebkittransitionend;
#if defined(ENABLE_ORIENTATION_EVENTS) && ENABLE_ORIENTATION_EVENTS
attribute EventListener onorientationchange;
#endif
attribute [Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchstart;
attribute [Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchmove;
attribute [Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchend;
attribute [Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchcancel;
attribute [Conditional=DEVICE_ORIENTATION,V8EnabledAtRuntime] EventListener ondevicemotion;
attribute [Conditional=DEVICE_ORIENTATION,V8EnabledAtRuntime] EventListener ondeviceorientation;
attribute [Conditional=PROXIMITY_EVENTS] EventListener onwebkitdeviceproximity;
// EventTarget interface
[Custom] void addEventListener(in DOMString type,
in EventListener listener,
in [Optional] boolean useCapture);
[Custom] void removeEventListener(in DOMString type,
in EventListener listener,
in [Optional] boolean useCapture);
boolean dispatchEvent(in Event evt)
raises(EventException);
[V8Custom] void captureEvents(/*in long eventFlags*/);
[V8Custom] void releaseEvents(/*in long eventFlags*/);
#if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
// Global constructors
attribute StyleSheetConstructor StyleSheet;
attribute CSSStyleSheetConstructor CSSStyleSheet;
attribute CSSValueConstructor CSSValue;
attribute CSSPrimitiveValueConstructor CSSPrimitiveValue;
attribute CSSValueListConstructor CSSValueList;
attribute WebKitCSSTransformValueConstructor WebKitCSSTransformValue;
#if defined(ENABLE_CSS_SHADERS) && ENABLE_CSS_SHADERS
attribute WebKitCSSMixFunctionValueConstructor WebKitCSSMixFunctionValue;
#endif
#if defined(ENABLE_CSS_FILTERS) && ENABLE_CSS_FILTERS
attribute WebKitCSSFilterValueConstructor WebKitCSSFilterValue;
#endif
#if defined(ENABLE_CSS_DEVICE_ADAPTATION) && ENABLE_CSS_DEVICE_ADAPTATION
attribute WebKitCSSViewportRuleConstructor WebKitCSSViewportRule;
#endif
attribute CSSRuleConstructor CSSRule;
attribute CSSCharsetRuleConstructor CSSCharsetRule;
attribute CSSFontFaceRuleConstructor CSSFontFaceRule;
attribute CSSImportRuleConstructor CSSImportRule;
attribute CSSMediaRuleConstructor CSSMediaRule;
attribute CSSPageRuleConstructor CSSPageRule;
attribute CSSStyleRuleConstructor CSSStyleRule;
attribute CSSStyleDeclarationConstructor CSSStyleDeclaration;
attribute MediaListConstructor MediaList;
attribute CounterConstructor Counter;
attribute CSSRuleListConstructor CSSRuleList;
attribute RectConstructor Rect;
attribute RGBColorConstructor RGBColor;
attribute StyleSheetListConstructor StyleSheetList;
// FIXME: Implement the commented-out global constructors for interfaces listed in DOM Level 3 Core specification.
attribute DOMCoreExceptionConstructor DOMException;
attribute DOMStringListConstructor DOMStringList;
// attribute NameListConstructor NameList;
// attribute DOMImplementationListConstructor DOMImplementationList;
// attribute DOMImplementationSourceConstructor DOMImplementationSource;
attribute DOMImplementationConstructor DOMImplementation;
attribute DOMSettableTokenListConstructor DOMSettableTokenList;
attribute DOMTokenListConstructor DOMTokenList;
attribute DocumentFragmentConstructor DocumentFragment;
attribute DocumentConstructor Document;
attribute NodeConstructor Node;
attribute NodeListConstructor NodeList;
[Conditional=MICRODATA] attribute PropertyNodeListConstructor PropertyNodeList;
attribute NamedNodeMapConstructor NamedNodeMap;
attribute CharacterDataConstructor CharacterData;
attribute AttrConstructor Attr;
attribute ElementConstructor Element;
attribute TextConstructor Text;
attribute CommentConstructor Comment;
// attribute TypeInfoConstructor TypeInfo;
// attribute UserDataHandlerConstructor UserDataHandler;
// attribute DOMErrorConstructor DOMError;
// attribute DOMErrorHandlerConstructor DOMErrorHandler
// attribute DOMLocatorConstructor DOMLocator;
// attribute DOMConfigurationConstructor DOMConfiguration;
attribute CDATASectionConstructor CDATASection;
attribute DocumentTypeConstructor DocumentType;
attribute NotationConstructor Notation;
attribute EntityConstructor Entity;
attribute EntityReferenceConstructor EntityReference;
attribute ProcessingInstructionConstructor ProcessingInstruction;
[Conditional=SHADOW_DOM, V8EnabledAtRuntime=shadowDOM] attribute ShadowRootConstructor WebKitShadowRoot;
[Conditional=SHADOW_DOM, V8EnabledAtRuntime=shadowDOM] attribute HTMLContentElementConstructor HTMLContentElement;
[Conditional=SHADOW_DOM, V8EnabledAtRuntime=shadowDOM] attribute HTMLShadowElementConstructor HTMLShadowElement;
attribute DOMSelectionConstructor Selection;
attribute DOMWindowConstructor Window;
attribute HTMLDocumentConstructor HTMLDocument;
attribute HTMLElementConstructor HTMLElement;
attribute HTMLAnchorElementConstructor HTMLAnchorElement;
attribute HTMLAppletElementConstructor HTMLAppletElement;
attribute HTMLAreaElementConstructor HTMLAreaElement;
attribute HTMLBRElementConstructor HTMLBRElement;
attribute HTMLBaseElementConstructor HTMLBaseElement;
attribute HTMLBaseFontElementConstructor HTMLBaseFontElement;
attribute HTMLBodyElementConstructor HTMLBodyElement;
attribute HTMLButtonElementConstructor HTMLButtonElement;
attribute HTMLCanvasElementConstructor HTMLCanvasElement;
attribute HTMLDListElementConstructor HTMLDListElement;
[Conditional=DATALIST_ELEMENT] attribute HTMLDataListElementConstructor HTMLDataListElement;
[Conditional=DIALOG_ELEMENT, V8EnabledPerContext=dialogElement] attribute HTMLDialogElementConstructor HTMLDialogElement;
attribute HTMLDirectoryElementConstructor HTMLDirectoryElement;
attribute HTMLDivElementConstructor HTMLDivElement;
attribute HTMLEmbedElementConstructor HTMLEmbedElement;
attribute HTMLFieldSetElementConstructor HTMLFieldSetElement;
attribute HTMLFontElementConstructor HTMLFontElement;
attribute HTMLFormElementConstructor HTMLFormElement;
attribute HTMLFrameElementConstructor HTMLFrameElement;
attribute HTMLFrameSetElementConstructor HTMLFrameSetElement;
attribute HTMLHRElementConstructor HTMLHRElement;
attribute HTMLHeadElementConstructor HTMLHeadElement;
attribute HTMLHeadingElementConstructor HTMLHeadingElement;
attribute HTMLHtmlElementConstructor HTMLHtmlElement;
attribute HTMLIFrameElementConstructor HTMLIFrameElement;
attribute HTMLImageElementConstructor HTMLImageElement;
attribute HTMLInputElementConstructor HTMLInputElement;
attribute HTMLKeygenElementConstructor HTMLKeygenElement;
attribute HTMLLIElementConstructor HTMLLIElement;
attribute HTMLLabelElementConstructor HTMLLabelElement;
attribute HTMLLegendElementConstructor HTMLLegendElement;
attribute HTMLLinkElementConstructor HTMLLinkElement;
attribute HTMLMapElementConstructor HTMLMapElement;
attribute HTMLMarqueeElementConstructor HTMLMarqueeElement;
attribute HTMLMenuElementConstructor HTMLMenuElement;
attribute HTMLMetaElementConstructor HTMLMetaElement;
#if defined(ENABLE_METER_ELEMENT) && ENABLE_METER_ELEMENT
attribute HTMLMeterElementConstructor HTMLMeterElement;
#endif
attribute HTMLModElementConstructor HTMLModElement;
attribute HTMLOListElementConstructor HTMLOListElement;
attribute HTMLObjectElementConstructor HTMLObjectElement;
attribute HTMLOptGroupElementConstructor HTMLOptGroupElement;
attribute HTMLOptionElementConstructor HTMLOptionElement;
attribute HTMLOutputElementConstructor HTMLOutputElement;
attribute HTMLParagraphElementConstructor HTMLParagraphElement;
attribute HTMLParamElementConstructor HTMLParamElement;
attribute HTMLPreElementConstructor HTMLPreElement;
#if defined(ENABLE_PROGRESS_ELEMENT) && ENABLE_PROGRESS_ELEMENT
attribute HTMLProgressElementConstructor HTMLProgressElement;
#endif
attribute HTMLQuoteElementConstructor HTMLQuoteElement;
attribute HTMLScriptElementConstructor HTMLScriptElement;
attribute HTMLSelectElementConstructor HTMLSelectElement;
attribute HTMLSpanElementConstructor HTMLSpanElement;
attribute HTMLStyleElementConstructor HTMLStyleElement;
attribute HTMLTableCaptionElementConstructor HTMLTableCaptionElement;
attribute HTMLTableCellElementConstructor HTMLTableCellElement;
attribute HTMLTableColElementConstructor HTMLTableColElement;
attribute HTMLTableElementConstructor HTMLTableElement;
attribute HTMLTableRowElementConstructor HTMLTableRowElement;
attribute HTMLTableSectionElementConstructor HTMLTableSectionElement;
attribute HTMLTextAreaElementConstructor HTMLTextAreaElement;
attribute HTMLTitleElementConstructor HTMLTitleElement;
attribute HTMLUListElementConstructor HTMLUListElement;
attribute HTMLCollectionConstructor HTMLCollection;
attribute HTMLAllCollectionConstructor HTMLAllCollection;
attribute HTMLFormControlsCollectionConstructor HTMLFormControlsCollection;
attribute HTMLOptionsCollectionConstructor HTMLOptionsCollection;
[Conditional=MICRODATA] attribute HTMLPropertiesCollectionConstructor HTMLPropertiesCollection;
attribute HTMLUnknownElementConstructor HTMLUnknownElement;
[JSCustomGetter, CustomConstructor] attribute HTMLImageElementConstructorConstructor Image; // Usable with new operator
[JSCustomGetter] attribute HTMLOptionElementConstructorConstructor Option; // Usable with new operator
[Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] attribute MediaKeyErrorConstructor MediaKeyError;
[Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] attribute MediaKeyEventConstructor MediaKeyEvent;
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute HTMLTrackElementConstructor HTMLTrackElement;
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackConstructor TextTrack;
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackCueConstructor TextTrackCue; // Usable with the new operator
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackCueListConstructor TextTrackCueList;
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackListConstructor TextTrackList;
[Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TrackEventConstructor TrackEvent;
[JSCustomGetter, Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLAudioElementConstructorConstructor Audio; // Usable with the new operator
[Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLAudioElementConstructor HTMLAudioElement;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLMediaElementConstructor HTMLMediaElement;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLVideoElementConstructor HTMLVideoElement;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute MediaErrorConstructor MediaError;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute TimeRangesConstructor TimeRanges;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLSourceElementConstructor HTMLSourceElement;
[Conditional=VIDEO, V8EnabledAtRuntime] attribute MediaControllerConstructor MediaController;
[Conditional=WEB_INTENTS_TAG] attribute HTMLIntentElementConstructor HTMLIntentElement;
attribute CanvasPatternConstructor CanvasPattern;
attribute CanvasGradientConstructor CanvasGradient;
attribute CanvasRenderingContext2DConstructor CanvasRenderingContext2D;
attribute ImageDataConstructor ImageData;
attribute TextMetricsConstructor TextMetrics;
[Conditional=WEBGL] attribute WebGLActiveInfoConstructor WebGLActiveInfo;
[Conditional=WEBGL] attribute WebGLBufferConstructor WebGLBuffer;
[Conditional=WEBGL] attribute WebGLFramebufferConstructor WebGLFramebuffer;
[Conditional=WEBGL] attribute WebGLProgramConstructor WebGLProgram;
[Conditional=WEBGL] attribute WebGLRenderbufferConstructor WebGLRenderbuffer;
[Conditional=WEBGL] attribute WebGLRenderingContextConstructor WebGLRenderingContext;
[Conditional=WEBGL] attribute WebGLShaderConstructor WebGLShader;
[Conditional=WEBGL] attribute WebGLShaderPrecisionFormatConstructor WebGLShaderPrecisionFormat;
[Conditional=WEBGL] attribute WebGLTextureConstructor WebGLTexture;
[Conditional=WEBGL] attribute WebGLUniformLocationConstructor WebGLUniformLocation;
attribute DOMStringMapConstructor DOMStringMap;
attribute ArrayBufferConstructor ArrayBuffer; // Usable with new operator
attribute Int8ArrayConstructor Int8Array; // Usable with new operator
attribute Uint8ArrayConstructor Uint8Array; // Usable with new operator
attribute Uint8ClampedArrayConstructor Uint8ClampedArray; // Usable with new operator
attribute Int16ArrayConstructor Int16Array; // Usable with new operator
attribute Uint16ArrayConstructor Uint16Array; // Usable with new operator
attribute Int32ArrayConstructor Int32Array; // Usable with new operator
attribute Uint32ArrayConstructor Uint32Array; // Usable with new operator
attribute Float32ArrayConstructor Float32Array; // Usable with new operator
attribute Float64ArrayConstructor Float64Array; // Usable with new operator
attribute DataViewConstructor DataView; // Usable with new operator
// Event Constructors
attribute EventConstructor Event;
attribute BeforeLoadEventConstructor BeforeLoadEvent;
attribute CompositionEventConstructor CompositionEvent;
attribute CustomEventConstructor CustomEvent;
attribute ErrorEventConstructor ErrorEvent;
attribute HashChangeEventConstructor HashChangeEvent;
attribute KeyboardEventConstructor KeyboardEvent;
attribute MessageEventConstructor MessageEvent;
attribute MouseEventConstructor MouseEvent;
attribute MutationEventConstructor MutationEvent;
attribute OverflowEventConstructor OverflowEvent;
attribute PopStateEventConstructor PopStateEvent;
attribute PageTransitionEventConstructor PageTransitionEvent;
attribute ProgressEventConstructor ProgressEvent;
attribute TextEventConstructor TextEvent;
attribute UIEventConstructor UIEvent;
attribute WebKitAnimationEventConstructor WebKitAnimationEvent;
attribute WebKitTransitionEventConstructor WebKitTransitionEvent;
attribute WheelEventConstructor WheelEvent;
attribute XMLHttpRequestProgressEventConstructor XMLHttpRequestProgressEvent;
[Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] attribute DeviceMotionEventConstructor DeviceMotionEvent;
[Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] attribute DeviceOrientationEventConstructor DeviceOrientationEvent;
[Conditional=TOUCH_EVENTS] attribute TouchConstructor Touch;
[Conditional=TOUCH_EVENTS] attribute TouchEventConstructor TouchEvent;
[Conditional=TOUCH_EVENTS] attribute TouchListConstructor TouchList;
attribute StorageEventConstructor StorageEvent;
[Conditional=INPUT_SPEECH] attribute SpeechInputEventConstructor SpeechInputEvent;
[Conditional=WEBGL] attribute WebGLContextEventConstructor WebGLContextEvent;
[Conditional=PROXIMITY_EVENTS] attribute DeviceProximityEventConstructor DeviceProximityEvent;
attribute EventExceptionConstructor EventException;
attribute WebKitCSSKeyframeRuleConstructor WebKitCSSKeyframeRule;
attribute WebKitCSSKeyframesRuleConstructor WebKitCSSKeyframesRule;
[Conditional=CSS_REGIONS] attribute WebKitCSSRegionRuleConstructor WebKitCSSRegionRule;
attribute WebKitCSSMatrixConstructor WebKitCSSMatrix; // Usable with the new operator
attribute WebKitPointConstructor WebKitPoint; // Usable with new the operator
attribute ClipboardConstructor Clipboard;
[Conditional=WORKERS] attribute WorkerConstructor Worker; // Usable with the new operator
[Conditional=SHARED_WORKERS, JSCustomGetter, V8EnabledAtRuntime] attribute SharedWorkerConstructor SharedWorker; // Usable with the new operator
attribute FileConstructor File;
attribute FileListConstructor FileList;
attribute BlobConstructor Blob;
attribute NodeFilterConstructor NodeFilter;
attribute RangeConstructor Range;
attribute RangeExceptionConstructor RangeException;
attribute EventSourceConstructor EventSource; // Usable with new the operator
// Mozilla has a separate XMLDocument object for XML documents.
// We just use Document for this.
attribute DocumentConstructor XMLDocument;
attribute DOMParserConstructor DOMParser;
attribute XMLSerializerConstructor XMLSerializer;
attribute XMLHttpRequestConstructor XMLHttpRequest; // Usable with the new operator
attribute XMLHttpRequestUploadConstructor XMLHttpRequestUpload;
attribute XMLHttpRequestExceptionConstructor XMLHttpRequestException;
[Conditional=XSLT] attribute XSLTProcessorConstructor XSLTProcessor; // Usable with the new operator
#if defined(ENABLE_CHANNEL_MESSAGING) && ENABLE_CHANNEL_MESSAGING
attribute MessagePortConstructor MessagePort;
attribute MessageChannelConstructor MessageChannel; // Usable with the new operator
#endif
attribute DOMPluginConstructor Plugin;
attribute DOMPluginArrayConstructor PluginArray;
attribute DOMMimeTypeConstructor MimeType;
attribute DOMMimeTypeArrayConstructor MimeTypeArray;
attribute ClientRectConstructor ClientRect;
attribute ClientRectListConstructor ClientRectList;
attribute StorageConstructor Storage;
#if defined(ENABLE_ANIMATION_API) && ENABLE_ANIMATION_API
attribute WebKitAnimationConstructor WebKitAnimation;
attribute WebKitAnimationListConstructor WebKitAnimationList;
#endif
attribute XPathEvaluatorConstructor XPathEvaluator;
attribute XPathResultConstructor XPathResult;
attribute XPathExceptionConstructor XPathException;
[Conditional=SVG] attribute SVGZoomEventConstructor SVGZoomEvent;
#if defined(ENABLE_SVG) && ENABLE_SVG
// Expose all implemented SVG 1.1 interfaces, excluding the SVG MI interfaces:
// SVGAnimatedPathData, SVGAnimatedPoints, SVGExternalResourcesRequired,
// SVGFilterPrimitiveStandardAttributes, SVGFitToViewBox, SVGLangSpace, SVGLocatable
// SVGStylable, SVGTests, SVGTransformable, SVGURIReference, SVGZoomAndPan
attribute SVGAElementConstructor SVGAElement;
attribute SVGAngleConstructor SVGAngle;
attribute SVGAnimatedAngleConstructor SVGAnimatedAngle;
attribute SVGAnimatedBooleanConstructor SVGAnimatedBoolean;
attribute SVGAnimatedEnumerationConstructor SVGAnimatedEnumeration;
attribute SVGAnimatedIntegerConstructor SVGAnimatedInteger;
attribute SVGAnimatedLengthConstructor SVGAnimatedLength;
attribute SVGAnimatedLengthListConstructor SVGAnimatedLengthList;
attribute SVGAnimatedNumberConstructor SVGAnimatedNumber;
attribute SVGAnimatedNumberListConstructor SVGAnimatedNumberList;
attribute SVGAnimatedPreserveAspectRatioConstructor SVGAnimatedPreserveAspectRatio;
attribute SVGAnimatedRectConstructor SVGAnimatedRect;
attribute SVGAnimatedStringConstructor SVGAnimatedString;
attribute SVGAnimatedTransformListConstructor SVGAnimatedTransformList;
attribute SVGCircleElementConstructor SVGCircleElement;
attribute SVGClipPathElementConstructor SVGClipPathElement;
attribute SVGColorConstructor SVGColor;
attribute SVGCursorElementConstructor SVGCursorElement;
// attribute SVGCSSRuleConstructor SVGCSSRule;
attribute SVGDefsElementConstructor SVGDefsElement;
attribute SVGDescElementConstructor SVGDescElement;
attribute SVGDocumentConstructor SVGDocument;
attribute SVGElementConstructor SVGElement;
attribute SVGElementInstanceConstructor SVGElementInstance;
attribute SVGElementInstanceListConstructor SVGElementInstanceList;
attribute SVGEllipseElementConstructor SVGEllipseElement;
attribute SVGForeignObjectElementConstructor SVGForeignObjectElement;
attribute SVGExceptionConstructor SVGException;
attribute SVGGElementConstructor SVGGElement;
attribute SVGGradientElementConstructor SVGGradientElement;
attribute SVGImageElementConstructor SVGImageElement;
attribute SVGLengthConstructor SVGLength;
attribute SVGLengthListConstructor SVGLengthList;
attribute SVGLinearGradientElementConstructor SVGLinearGradientElement;
attribute SVGLineElementConstructor SVGLineElement;
attribute SVGMarkerElementConstructor SVGMarkerElement;
attribute SVGMaskElementConstructor SVGMaskElement;
attribute SVGMatrixConstructor SVGMatrix;
attribute SVGMetadataElementConstructor SVGMetadataElement;
attribute SVGNumberConstructor SVGNumber;
attribute SVGNumberListConstructor SVGNumberList;
attribute SVGPaintConstructor SVGPaint;
attribute SVGPathElementConstructor SVGPathElement;
attribute SVGPathSegConstructor SVGPathSeg;
attribute SVGPathSegArcAbsConstructor SVGPathSegArcAbs;
attribute SVGPathSegArcRelConstructor SVGPathSegArcRel;
attribute SVGPathSegClosePathConstructor SVGPathSegClosePath;
attribute SVGPathSegCurvetoCubicAbsConstructor SVGPathSegCurvetoCubicAbs;
attribute SVGPathSegCurvetoCubicRelConstructor SVGPathSegCurvetoCubicRel;
attribute SVGPathSegCurvetoCubicSmoothAbsConstructor SVGPathSegCurvetoCubicSmoothAbs;
attribute SVGPathSegCurvetoCubicSmoothRelConstructor SVGPathSegCurvetoCubicSmoothRel;
attribute SVGPathSegCurvetoQuadraticAbsConstructor SVGPathSegCurvetoQuadraticAbs;
attribute SVGPathSegCurvetoQuadraticRelConstructor SVGPathSegCurvetoQuadraticRel;
attribute SVGPathSegCurvetoQuadraticSmoothAbsConstructor SVGPathSegCurvetoQuadraticSmoothAbs;
attribute SVGPathSegCurvetoQuadraticSmoothRelConstructor SVGPathSegCurvetoQuadraticSmoothRel;
attribute SVGPathSegLinetoAbsConstructor SVGPathSegLinetoAbs;
attribute SVGPathSegLinetoHorizontalAbsConstructor SVGPathSegLinetoHorizontalAbs;
attribute SVGPathSegLinetoHorizontalRelConstructor SVGPathSegLinetoHorizontalRel;
attribute SVGPathSegLinetoRelConstructor SVGPathSegLinetoRel;
attribute SVGPathSegLinetoVerticalAbsConstructor SVGPathSegLinetoVerticalAbs;
attribute SVGPathSegLinetoVerticalRelConstructor SVGPathSegLinetoVerticalRel;
attribute SVGPathSegListConstructor SVGPathSegList;
attribute SVGPathSegMovetoAbsConstructor SVGPathSegMovetoAbs;
attribute SVGPathSegMovetoRelConstructor SVGPathSegMovetoRel;
attribute SVGPatternElementConstructor SVGPatternElement;
attribute SVGPointConstructor SVGPoint;
attribute SVGPointListConstructor SVGPointList;
attribute SVGPolygonElementConstructor SVGPolygonElement;
attribute SVGPolylineElementConstructor SVGPolylineElement;
attribute SVGPreserveAspectRatioConstructor SVGPreserveAspectRatio;
attribute SVGRadialGradientElementConstructor SVGRadialGradientElement;
attribute SVGRectConstructor SVGRect;
attribute SVGRectElementConstructor SVGRectElement;
attribute SVGRenderingIntentConstructor SVGRenderingIntent;
attribute SVGScriptElementConstructor SVGScriptElement;
attribute SVGStopElementConstructor SVGStopElement;
attribute SVGStringListConstructor SVGStringList;
attribute SVGStyleElementConstructor SVGStyleElement;
attribute SVGSVGElementConstructor SVGSVGElement;
attribute SVGSwitchElementConstructor SVGSwitchElement;
attribute SVGSymbolElementConstructor SVGSymbolElement;
attribute SVGTextContentElementConstructor SVGTextContentElement;
attribute SVGTextElementConstructor SVGTextElement;
attribute SVGTextPathElementConstructor SVGTextPathElement;
attribute SVGTextPositioningElementConstructor SVGTextPositioningElement;
attribute SVGTitleElementConstructor SVGTitleElement;
attribute SVGTransformConstructor SVGTransform;
attribute SVGTransformListConstructor SVGTransformList;
attribute SVGTRefElementConstructor SVGTRefElement;
attribute SVGTSpanElementConstructor SVGTSpanElement;
attribute SVGUnitTypesConstructor SVGUnitTypes;
attribute SVGUseElementConstructor SVGUseElement;
attribute SVGViewElementConstructor SVGViewElement;
attribute SVGViewSpecConstructor SVGViewSpec;
attribute SVGZoomAndPanConstructor SVGZoomAndPan;
attribute SVGAnimateColorElementConstructor SVGAnimateColorElement;
attribute SVGAnimateElementConstructor SVGAnimateElement;
attribute SVGAnimateMotionElementConstructor SVGAnimateMotionElement;
attribute SVGAnimateTransformElementConstructor SVGAnimateTransformElement;
attribute SVGMPathElementConstructor SVGMPathElement;
attribute SVGSetElementConstructor SVGSetElement;
#if defined(ENABLE_SVG_FONTS) && ENABLE_SVG_FONTS
attribute SVGAltGlyphDefElementConstructor SVGAltGlyphDefElement;
attribute SVGAltGlyphElementConstructor SVGAltGlyphElement;
attribute SVGAltGlyphItemElementConstructor SVGAltGlyphItemElement;
// attribute SVGDefinitionSrcElementConstructor SVGDefinitionSrcElement;
attribute SVGFontElementConstructor SVGFontElement;
attribute SVGFontFaceElementConstructor SVGFontFaceElement;
attribute SVGFontFaceFormatElementConstructor SVGFontFaceFormatElement;
attribute SVGFontFaceNameElementConstructor SVGFontFaceNameElement;
attribute SVGFontFaceSrcElementConstructor SVGFontFaceSrcElement;
attribute SVGFontFaceUriElementConstructor SVGFontFaceUriElement;
attribute SVGGlyphElementConstructor SVGGlyphElement;
attribute SVGGlyphRefElementConstructor SVGGlyphRefElement;
attribute SVGHKernElementConstructor SVGHKernElement;
attribute SVGMissingGlyphElementConstructor SVGMissingGlyphElement;
attribute SVGVKernElementConstructor SVGVKernElement;
#endif
#if defined(ENABLE_FILTERS) && ENABLE_FILTERS
attribute SVGComponentTransferFunctionElementConstructor SVGComponentTransferFunctionElement;
attribute SVGFEBlendElementConstructor SVGFEBlendElement;
attribute SVGFEColorMatrixElementConstructor SVGFEColorMatrixElement;
attribute SVGFEComponentTransferElementConstructor SVGFEComponentTransferElement;
attribute SVGFECompositeElementConstructor SVGFECompositeElement;
attribute SVGFEConvolveMatrixElementConstructor SVGFEConvolveMatrixElement;
attribute SVGFEDiffuseLightingElementConstructor SVGFEDiffuseLightingElement;
attribute SVGFEDisplacementMapElementConstructor SVGFEDisplacementMapElement;
attribute SVGFEDistantLightElementConstructor SVGFEDistantLightElement;
attribute SVGFEDropShadowElementConstructor SVGFEDropShadowElement;
attribute SVGFEFloodElementConstructor SVGFEFloodElement;
attribute SVGFEFuncAElementConstructor SVGFEFuncAElement;
attribute SVGFEFuncBElementConstructor SVGFEFuncBElement;
attribute SVGFEFuncGElementConstructor SVGFEFuncGElement;
attribute SVGFEFuncRElementConstructor SVGFEFuncRElement;
attribute SVGFEGaussianBlurElementConstructor SVGFEGaussianBlurElement;
attribute SVGFEImageElementConstructor SVGFEImageElement;
attribute SVGFEMergeElementConstructor SVGFEMergeElement;
attribute SVGFEMergeNodeElementConstructor SVGFEMergeNodeElement;
attribute SVGFEMorphologyElementConstructor SVGFEMorphologyElement;
attribute SVGFEOffsetElementConstructor SVGFEOffsetElement;
attribute SVGFEPointLightElementConstructor SVGFEPointLightElement;
attribute SVGFESpecularLightingElementConstructor SVGFESpecularLightingElement;
attribute SVGFESpotLightElementConstructor SVGFESpotLightElement;
attribute SVGFETileElementConstructor SVGFETileElement;
attribute SVGFETurbulenceElementConstructor SVGFETurbulenceElement;
attribute SVGFilterElementConstructor SVGFilterElement;
#endif
#endif
attribute DOMFormDataConstructor FormData;
[Conditional=BLOB|FILE_SYSTEM] attribute FileErrorConstructor FileError;
[Conditional=BLOB] attribute FileReaderConstructor FileReader;
[Conditional=BLOB] attribute DOMURLConstructor URL;
[Conditional=BLOB] attribute DOMURLConstructor webkitURL; // FIXME: deprecate this.
[Conditional=MUTATION_OBSERVERS] attribute MutationObserverConstructor WebKitMutationObserver;
[Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute MediaSourceConstructor WebKitMediaSource;
[Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute SourceBufferConstructor WebKitSourceBuffer;
[Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute SourceBufferListConstructor WebKitSourceBufferList;
#endif // defined(LANGUAGE_JAVASCRIPT)
#if defined(V8_BINDING) && V8_BINDING
// window.toString() requires special handling in V8
[V8DoNotCheckSignature, DoNotCheckSecurity, Custom, NotEnumerable] DOMString toString();
#endif // defined(V8_BINDING)
};
|