ladybird/Userland/Libraries/LibWeb/DOM/Document.idl
Andrew Kaster 67ceba2e6a LibWeb: Add Exposed attribute and IDL spec links where missing
The intent is to use these to autogenerate prototype declarations for
Window and WorkerGlobalScope classes.

And the spec links are just nice to have :^)
2022-10-09 10:14:57 +02:00

110 lines
3.9 KiB
Plaintext

#import <CSS/StyleSheetList.idl>
#import <DOM/Comment.idl>
#import <DOM/DOMImplementation.idl>
#import <DOM/DocumentFragment.idl>
#import <DOM/DocumentType.idl>
#import <DOM/Element.idl>
#import <DOM/Event.idl>
#import <DOM/EventHandler.idl>
#import <DOM/HTMLCollection.idl>
#import <DOM/Node.idl>
#import <DOM/NodeFilter.idl>
#import <DOM/NodeIterator.idl>
#import <DOM/NodeList.idl>
#import <DOM/ParentNode.idl>
#import <DOM/Range.idl>
#import <DOM/Text.idl>
#import <DOM/TreeWalker.idl>
#import <HTML/HTMLElement.idl>
#import <HTML/HTMLHeadElement.idl>
#import <HTML/HTMLScriptElement.idl>
// https://dom.spec.whatwg.org/#document
[Exposed=Window]
interface Document : Node {
constructor();
boolean hasFocus();
// FIXME: These attributes currently don't do anything.
[PutForwards=href, LegacyUnforgeable] readonly attribute Location? location;
attribute USVString domain;
readonly attribute DOMImplementation implementation;
[ImplementedAs=url_string] readonly attribute USVString URL;
readonly attribute USVString documentURI;
readonly attribute DOMString characterSet;
readonly attribute DOMString charset;
readonly attribute DOMString inputEncoding;
readonly attribute DOMString contentType;
readonly attribute Window? defaultView;
[CEReactions] Document open(optional DOMString unused1, optional DOMString unused2);
// FIXME: implement ExceptionOr<HTML::Window> Document::open(...)
// WindowProxy? open(USVString url, DOMString name, DOMString features);
[CEReactions] undefined close();
[CEReactions] undefined write(DOMString... text);
[CEReactions] undefined writeln(DOMString... text);
attribute DOMString cookie;
readonly attribute USVString referrer;
readonly attribute Element? activeElement;
Element? getElementById(DOMString id);
HTMLCollection getElementsByName(DOMString name);
HTMLCollection getElementsByTagName(DOMString tagName);
HTMLCollection getElementsByTagNameNS(DOMString? namespace, DOMString localName);
HTMLCollection getElementsByClassName(DOMString className);
readonly attribute HTMLCollection applets;
readonly attribute HTMLCollection anchors;
readonly attribute HTMLCollection images;
readonly attribute HTMLCollection embeds;
readonly attribute HTMLCollection plugins;
readonly attribute HTMLCollection links;
readonly attribute HTMLCollection forms;
readonly attribute HTMLCollection scripts;
// FIXME: Should return an HTMLAllCollection
readonly attribute HTMLCollection all;
Element createElement(DOMString tagName);
Element createElementNS(DOMString? namespace, DOMString qualifiedName);
DocumentFragment createDocumentFragment();
Text createTextNode(DOMString data);
Comment createComment(DOMString data);
Range createRange();
Event createEvent(DOMString interface);
[CEReactions, NewObject] Node importNode(Node node, optional boolean deep = false);
[CEReactions, ImplementedAs=adopt_node_binding] Node adoptNode(Node node);
[ImplementedAs=style_sheets_for_bindings] readonly attribute StyleSheetList styleSheets;
readonly attribute DOMString compatMode;
readonly attribute DocumentType? doctype;
readonly attribute Element? documentElement;
attribute HTMLElement? body;
readonly attribute HTMLHeadElement? head;
readonly attribute HTMLScriptElement? currentScript;
readonly attribute DOMString readyState;
attribute DOMString title;
readonly boolean hidden;
readonly DOMString visibilityState;
[NewObject] NodeIterator createNodeIterator(Node root, optional unsigned long whatToShow = 0xFFFFFFFF, optional NodeFilter? filter = null);
[NewObject] TreeWalker createTreeWalker(Node root, optional unsigned long whatToShow = 0xFFFFFFFF, optional NodeFilter? filter = null);
};
Document includes ParentNode;
Document includes GlobalEventHandlers;