diff --git a/Userland/Libraries/LibWeb/HTML/HTMLAreaElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLAreaElement.idl
index df8a755d774dc8143b981866ac545ccf0237c854..509cc72ec35fd1f08c1a06f67730dc72f4354e78 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLAreaElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLAreaElement.idl
@@ -14,6 +14,8 @@ interface HTMLAreaElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString download;
[CEReactions, Reflect] attribute USVString ping;
[CEReactions, Reflect] attribute DOMString rel;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
+ // FIXME: [CEReactions] attribute DOMString referrerPolicy;
// Obsolete
[Reflect=nohref] attribute boolean noHref;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLBodyElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLBodyElement.idl
index 47ae014d18e4ee2cbbe85e09dc2f7552a91ad336..97feaa89080a0c30c9dab27e38c4de746287cb36 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLBodyElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLBodyElement.idl
@@ -7,6 +7,7 @@ interface HTMLBodyElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, LegacyNullToEmptyString, Reflect] attribute DOMString text;
[CEReactions, LegacyNullToEmptyString, Reflect] attribute DOMString link;
[CEReactions, LegacyNullToEmptyString, Reflect=vlink] attribute DOMString vLink;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLCanvasElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLCanvasElement.idl
index 6ea01e08fdaf86e063b43727ab3cd97e95f21ef4..fe1810446ea1db98a8fc6704fc8fc8befedec2b1 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLCanvasElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLCanvasElement.idl
@@ -10,12 +10,14 @@ interface HTMLCanvasElement : HTMLElement {
[HTMLConstructor] constructor();
- RenderingContext? getContext(DOMString contextId, optional any options = null);
[CEReactions] attribute unsigned long width;
[CEReactions] attribute unsigned long height;
+ RenderingContext? getContext(DOMString contextId, optional any options = null);
+
USVString toDataURL(optional DOMString type = "image/png", optional double quality);
undefined toBlob(BlobCallback _callback, optional DOMString type = "image/png", optional double quality);
+
};
callback BlobCallback = undefined (Blob? blob);
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLDetailsElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLDetailsElement.idl
index 8694d0c7701a0fae445d39bd3634ccc7890d9f0f..a6d027fe4858addfc21f1310b99702f83da2a48c 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLDetailsElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLDetailsElement.idl
@@ -6,6 +6,7 @@ interface HTMLDetailsElement : HTMLElement {
[HTMLConstructor] constructor();
+ [CEReactions, Reflect] attribute DOMString name;
[CEReactions, Reflect] attribute boolean open;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLElement.idl
index 52fc46dd64a8773a745c5397f4eb279adddb3016..5c4487b4e78543a49ffe8e4f8cfce1b1ca06520c 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLElement.idl
@@ -8,37 +8,62 @@ interface HTMLElement : Element {
[HTMLConstructor] constructor();
+ // metadata attributes
[Reflect, CEReactions] attribute DOMString title;
[Reflect, CEReactions] attribute DOMString lang;
+ // FIXME: [CEReactions] attribute boolean translate;
[CEReactions] attribute DOMString dir;
+ // user interaction
[Reflect, CEReactions] attribute boolean hidden;
-
- attribute DOMString contentEditable;
-
+ // FIXME: [CEReactions] attribute boolean inert;
undefined click();
+ // FIXME: [CEReactions] attribute DOMString accessKey;
+ // FIXME: readonly attribute DOMString accessKeyLabel;
+ // FIXME: [CEReactions] attribute boolean draggable;
+ // FIXME: [CEReactions] attribute boolean spellcheck;
+ // FIXME: [CEReactions] attribute DOMString autocapitalize;
- // FIXME: Support the optional FocusOptions parameter.
- undefined focus();
+ [LegacyNullToEmptyString, CEReactions] attribute DOMString innerText;
+ // FIXME: [LegacyNullToEmptyString, CEReactions] attribute DOMString outerText;
- undefined blur();
+ // FIXME: ElementInternals attachInternals();
- [LegacyNullToEmptyString, CEReactions] attribute DOMString innerText;
+ // The popover API
+ // FIXME: undefined showPopover();
+ // FIXME: undefined hidePopover();
+ // FIXME: boolean togglePopover(optional boolean force);
+ // FIXME: [CEReactions] attribute DOMString? popover;
+ // https://drafts.csswg.org/cssom-view/#extensions-to-the-htmlelement-interface
+ // FIXME: readonly attribute Element? offsetParent;
readonly attribute long offsetTop;
readonly attribute long offsetLeft;
readonly attribute long offsetWidth;
readonly attribute long offsetHeight;
+
};
HTMLElement includes GlobalEventHandlers;
+HTMLElement includes ElementContentEditable;
HTMLElement includes HTMLOrSVGElement;
+interface mixin ElementContentEditable {
+ [CEReactions] attribute DOMString contentEditable;
+ // FIXME: [CEReactions] attribute DOMString enterKeyHint;
+ // FIXME: readonly attribute boolean isContentEditable;
+ // FIXME: [CEReactions] attribute DOMString inputMode;
+};
+
interface mixin HTMLOrSVGElement {
[SameObject] readonly attribute DOMStringMap dataset;
+ // FIXME: attribute DOMString nonce; // intentionally no [CEReactions]
[CEReactions, Reflect] attribute boolean autofocus;
[CEReactions] attribute long tabIndex;
+ // FIXME: Support the optional FocusOptions parameter.
+ undefined focus();
+ undefined blur();
};
HTMLElement includes ElementCSSInlineStyle;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLEmbedElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLEmbedElement.idl
index 2cf3c34c1b8706a1c68bb868f195eb7867efd8ef..ef309c8919171a6e7c1d19d30695f180714a6427 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLEmbedElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLEmbedElement.idl
@@ -10,7 +10,9 @@ interface HTMLEmbedElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString type;
[CEReactions, Reflect] attribute DOMString width;
[CEReactions, Reflect] attribute DOMString height;
+ // FIXME: Document? getSVGDocument();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString name;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLFormElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLFormElement.idl
index 30b95985e9b3a281f3aaa8c70e3f98d58f417183..d6c99826b9bbad2b9d6e4688af50d0a3d3148f66 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLFormElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLFormElement.idl
@@ -7,21 +7,27 @@ interface HTMLFormElement : HTMLElement {
[HTMLConstructor] constructor();
- [CEReactions, Reflect] attribute DOMString name;
- [CEReactions, Reflect] attribute DOMString rel;
- [CEReactions] attribute DOMString method;
[CEReactions, Reflect=accept-charset] attribute DOMString acceptCharset;
- [CEReactions, Reflect=novalidate] attribute boolean noValidate;
[CEReactions] attribute USVString action;
+ // FIXME: [CEReactions] attribute DOMString autocomplete;
+ // FIXME: [CEReactions] attribute DOMString enctype;
+ // FIXME: [CEReactions] attribute DOMString encoding;
+ [CEReactions] attribute DOMString method;
+ [CEReactions, Reflect] attribute DOMString name;
+ [CEReactions, Reflect=novalidate] attribute boolean noValidate;
[CEReactions, Reflect] attribute DOMString target;
+ [CEReactions, Reflect] attribute DOMString rel;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
+
+ [SameObject] readonly attribute HTMLFormControlsCollection elements;
+ readonly attribute unsigned long length;
+ // FIXME: getter Element (unsigned long index);
+ // FIXME: getter (RadioNodeList or Element) (DOMString name);
undefined submit();
+ // FIXME: undefined requestSubmit(optional HTMLElement? submitter = null);
[CEReactions] undefined reset();
boolean checkValidity();
boolean reportValidity();
- [SameObject] readonly attribute HTMLFormControlsCollection elements;
-
- readonly attribute unsigned long length;
-
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLFrameElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLFrameElement.idl
index 89c4e229c5f6aa355e5febdc68da0e5065ea8f0e..dc4def2d8d7d36aa213b6a495125bcf29e96a7a5 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLFrameElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLFrameElement.idl
@@ -11,5 +11,11 @@ interface HTMLFrameElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect=frameborder] attribute DOMString frameBorder;
[CEReactions, Reflect=longdesc] attribute DOMString longDesc;
+ // FIXME: [CEReactions] attribute boolean noResize;
+ // FIXME: readonly attribute Document? contentDocument;
+ // FIXME: readonly attribute WindowProxy? contentWindow;
+
+ // FIXME: [CEReactions] attribute [LegacyNullToEmptyString] DOMString marginHeight;
+ // FIXME: [CEReactions] attribute [LegacyNullToEmptyString] DOMString marginWidth;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLHRElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLHRElement.idl
index 172e7a31a4e47cf83b112cd078aafdfdb7fbe90f..b5dda1934cd15df0c8b8a68f121051f83126d759 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLHRElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLHRElement.idl
@@ -6,6 +6,7 @@ interface HTMLHRElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString color;
[CEReactions, Reflect=noshade] attribute boolean noShade;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLHeadingElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLHeadingElement.idl
index d1df2dcca2da1ac61091e8369614ab137669e837..83f90e135d06d10bdba92a3407b5ddff2a778aaf 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLHeadingElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLHeadingElement.idl
@@ -6,6 +6,7 @@ interface HTMLHeadingElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLHtmlElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLHtmlElement.idl
index 8c27c495ae7fdfd9600c756640a78e172f6260fb..d4dfd3b677b7272bdff3719e07b03b5e2734e832 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLHtmlElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLHtmlElement.idl
@@ -6,6 +6,7 @@ interface HTMLHtmlElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString version;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
index bff188e02689de5571dfdb16eaaade138aaea11f..3d4cae878de80c3661965cd4a373c15c98017af1 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl
@@ -10,21 +10,24 @@ interface HTMLIFrameElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect] attribute DOMString srcdoc;
[CEReactions, Reflect] attribute DOMString name;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList sandbox;
[CEReactions, Reflect] attribute DOMString allow;
+ [CEReactions, Reflect=allowfullscreen] attribute boolean allowFullscreen;
[CEReactions, Reflect] attribute DOMString width;
[CEReactions, Reflect] attribute DOMString height;
- [CEReactions, Reflect=allowfullscreen] attribute boolean allowFullscreen;
-
+ // FIXME: [CEReactions] attribute DOMString referrerPolicy;
+ // FIXME: [CEReactions] attribute DOMString loading;
readonly attribute Document? contentDocument;
-
readonly attribute WindowProxy? contentWindow;
+ Document? getSVGDocument();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString scrolling;
[CEReactions, Reflect=frameborder] attribute DOMString frameBorder;
+ // FIXME: [CEReactions] attribute USVString longDesc;
[CEReactions, LegacyNullToEmptyString, Reflect=marginheight] attribute DOMString marginHeight;
[CEReactions, LegacyNullToEmptyString, Reflect=marginwidth] attribute DOMString marginWidth;
- Document? getSVGDocument();
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLImageElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLImageElement.idl
index 4304041b62fb783df1b5960d9284cfcf13644235..7027cb511baaf3a9588819bb1d632775ebd9e344 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLImageElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLImageElement.idl
@@ -6,22 +6,34 @@ interface HTMLImageElement : HTMLElement {
[HTMLConstructor] constructor();
- [CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect] attribute DOMString alt;
+ [CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect] attribute DOMString srcset;
[CEReactions, Reflect] attribute DOMString sizes;
+ // FIXME: [CEReactions] attribute DOMString? crossOrigin;
[CEReactions, Reflect=usemap] attribute DOMString useMap;
[CEReactions, Reflect=ismap] attribute boolean isMap;
-
- [CEReactions, Reflect] attribute DOMString name;
- [CEReactions, Reflect] attribute DOMString align;
- [CEReactions, LegacyNullToEmptyString, Reflect] attribute DOMString border;
-
[CEReactions] attribute unsigned long width;
[CEReactions] attribute unsigned long height;
readonly attribute unsigned long naturalWidth;
readonly attribute unsigned long naturalHeight;
-
readonly attribute boolean complete;
+ // FIXME: readonly attribute USVString currentSrc;
+ // FIXME: [CEReactions] attribute DOMString referrerPolicy;
+ // FIXME: [CEReactions] attribute DOMString decoding;
+ // FIXME: [CEReactions] attribute DOMString loading;
+ // FIXME: [CEReactions] attribute DOMString fetchPriority;
+
+ // FIXME: Promise decode();
+
+ // Obsolete
+ [CEReactions, Reflect] attribute DOMString name;
+ // FIXME: [CEReactions] attribute USVString lowsrc;
+ [CEReactions, Reflect] attribute DOMString align;
+ // FIXME: [CEReactions] attribute unsigned long hspace;
+ // FIXME: [CEReactions] attribute unsigned long vspace;
+ // FIXME: [CEReactions] attribute USVString longDesc;
+
+ [CEReactions, LegacyNullToEmptyString, Reflect] attribute DOMString border;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLLIElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLLIElement.idl
index 791e297972baab856b273c399a178af9f609f71c..8f2799825b3c5bb4159ceb71db7c0d524e2c29f7 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLLIElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLLIElement.idl
@@ -5,8 +5,10 @@
interface HTMLLIElement : HTMLElement {
[HTMLConstructor] constructor();
+
// FIXME: [CEReactions] attribute long value;
+ // Obsolete
[CEReactions, Reflect] attribute DOMString type;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLLabelElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLLabelElement.idl
index 002ecee32c70ecb7e912a792d69b391ae1f8a8aa..f650b7a9bcb1dfca6e279ef831118bd93b5f5304 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLLabelElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLLabelElement.idl
@@ -6,6 +6,8 @@ interface HTMLLabelElement : HTMLElement {
[HTMLConstructor] constructor();
+ // FIXME: readonly attribute HTMLFormElement? form;
[CEReactions, Reflect=for] attribute DOMString htmlFor;
+ // FIXME: readonly attribute HTMLElement? control;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.idl
index f503297d1d9e47c54cf112a15ebd31b1d7dcc771..0cea8e9abba2f0fcdc974094543a1fd7fa432510 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.idl
@@ -1,3 +1,4 @@
+#import
#import
// https://html.spec.whatwg.org/multipage/semantics.html#htmllinkelement
@@ -7,17 +8,26 @@ interface HTMLLinkElement : HTMLElement {
[HTMLConstructor] constructor();
[CEReactions, Reflect] attribute DOMString href;
- [CEReactions, Reflect] attribute DOMString hreflang;
- [CEReactions, Reflect] attribute DOMString integrity;
- [CEReactions, Reflect] attribute DOMString media;
+ // FIXME: [CEReactions] attribute DOMString? crossOrigin;
[CEReactions, Reflect] attribute DOMString rel;
+ // FIXME: [CEReactions] attribute DOMString as;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
+ [CEReactions, Reflect] attribute DOMString media;
+ [CEReactions, Reflect] attribute DOMString integrity;
+ [CEReactions, Reflect] attribute DOMString hreflang;
[CEReactions, Reflect] attribute DOMString type;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList sizes;
[CEReactions, Reflect=imagesrcset] attribute DOMString imageSrcset;
[CEReactions, Reflect=imagesizes] attribute DOMString imageSizes;
+ // FIXME: [CEReactions] attribute DOMString referrerPolicy;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList blocking;
[CEReactions, Reflect] attribute boolean disabled;
+ // FIXME: [CEReactions] attribute DOMString fetchPriority;
+ // Obsolete
[CEReactions, Reflect] attribute DOMString charset;
[CEReactions, Reflect] attribute DOMString rev;
[CEReactions, Reflect] attribute DOMString target;
};
+// FIXME: HTMLLinkElement includes LinkStyle;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMapElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLMapElement.idl
index 79da6e07eed6108593eb66057336fd2cfe0cbc0b..8e074d80c56d5d76d746f1781f9cb89a65d8d5e4 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMapElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMapElement.idl
@@ -7,5 +7,6 @@ interface HTMLMapElement : HTMLElement {
[HTMLConstructor] constructor();
[CEReactions, Reflect] attribute DOMString name;
+ // FIXME: [SameObject] readonly attribute HTMLCollection areas;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMarqueeElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLMarqueeElement.idl
index b9fd06c47437a21c52dd44e87b5d3d710a5e63ce..fa12118ced29d80fcf93ae78f9c83d00c7bb2da8 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMarqueeElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMarqueeElement.idl
@@ -10,6 +10,15 @@ interface HTMLMarqueeElement : HTMLElement {
[CEReactions, Reflect=bgcolor] attribute DOMString bgColor;
[CEReactions, Reflect] attribute DOMString direction;
[CEReactions, Reflect] attribute DOMString height;
+ // FIXME: [CEReactions] attribute unsigned long hspace;
+ // FIXME: [CEReactions] attribute long loop;
+ // FIXME: [CEReactions] attribute unsigned long scrollAmount;
+ // FIXME: [CEReactions] attribute unsigned long scrollDelay;
+ // FIXME: [CEReactions] attribute boolean trueSpeed;
+ // FIXME: [CEReactions] attribute unsigned long vspace;
[CEReactions, Reflect] attribute DOMString width;
+ // FIXME: undefined start();
+ // FIXME: undefined stop();
+
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.idl
index 8f3a869c117e1de16e312d65880df47d3b1a1073..ee9429c695dd47b51ddbeb85c1d6c49cae9e6e89 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.idl
@@ -19,6 +19,7 @@ interface HTMLMediaElement : HTMLElement {
// network state
[Reflect, CEReactions] attribute DOMString src;
+ // FIXME: attribute MediaProvider? srcObject;
readonly attribute USVString currentSrc;
[Reflect=crossorigin, CEReactions] attribute DOMString? crossOrigin;
const unsigned short NETWORK_EMPTY = 0;
@@ -26,6 +27,7 @@ interface HTMLMediaElement : HTMLElement {
const unsigned short NETWORK_LOADING = 2;
const unsigned short NETWORK_NO_SOURCE = 3;
readonly attribute unsigned short networkState;
+ // FIXME: [CEReactions] attribute DOMString preload;
readonly attribute TimeRanges buffered;
undefined load();
CanPlayTypeResult canPlayType(DOMString type);
@@ -43,7 +45,13 @@ interface HTMLMediaElement : HTMLElement {
attribute double currentTime;
undefined fastSeek(double time);
readonly attribute unrestricted double duration;
+ // FIXME: object getStartDate();
readonly attribute boolean paused;
+ // FIXME: attribute double defaultPlaybackRate;
+ // FIXME: attribute double playbackRate;
+ // FIXME: attribute boolean preservesPitch;
+ // FIXME: readonly attribute TimeRanges played;
+ // FIXME: readonly attribute TimeRanges seekable;
readonly attribute boolean ended;
[Reflect, CEReactions] attribute boolean autoplay;
[Reflect, CEReactions] attribute boolean loop;
@@ -59,4 +67,7 @@ interface HTMLMediaElement : HTMLElement {
// tracks
[SameObject] readonly attribute AudioTrackList audioTracks;
[SameObject] readonly attribute VideoTrackList videoTracks;
+ // FIXME: [SameObject] readonly attribute TextTrackList textTracks;
+ // FIXME: TextTrack addTextTrack(TextTrackKind kind, optional DOMString label = "", optional DOMString language = "");
+
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMenuElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLMenuElement.idl
index 82fb9df4838aecf8c70b911d615b7e5eb4fa7612..398d64a1790509403f7395541e822d25f09212f1 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMenuElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMenuElement.idl
@@ -6,6 +6,7 @@ interface HTMLMenuElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute boolean compact;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMetaElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLMetaElement.idl
index 35bffbd2468bfa8b8aa47bd1f0d4216c7499bb9f..28b72d0529e4927264d3d8543a8afa0fe621dcb4 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMetaElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMetaElement.idl
@@ -7,9 +7,11 @@ interface HTMLMetaElement : HTMLElement {
[HTMLConstructor] constructor();
[CEReactions, Reflect] attribute DOMString name;
- [CEReactions, Reflect] attribute DOMString content;
[CEReactions, Reflect=http-equiv] attribute DOMString httpEquiv;
+ [CEReactions, Reflect] attribute DOMString content;
+ // FIXME: [CEReactions] attribute DOMString media;
+ // Obsolete
[CEReactions, Reflect] attribute DOMString scheme;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLOListElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLOListElement.idl
index 61f70ae43165f6e75bc716ba158e8c0d7f87c760..a59842bbec876039ae44812d8f4bee28d6ad1122 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLOListElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLOListElement.idl
@@ -10,6 +10,7 @@ interface HTMLOListElement : HTMLElement {
// FIXME: [CEReactions] attribute long start;
[CEReactions, Reflect] attribute DOMString type;
+ // Obsolete
[CEReactions, Reflect] attribute boolean compact;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLObjectElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLObjectElement.idl
index 1e40ca53296094196ff96ee2474160236358591e..8175863b4c0497dde03c1869e070dc4190c13c4f 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLObjectElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLObjectElement.idl
@@ -10,20 +10,32 @@ interface HTMLObjectElement : HTMLElement {
[CEReactions] attribute DOMString data;
[CEReactions, Reflect] attribute DOMString type;
[CEReactions, Reflect] attribute DOMString name;
- [CEReactions, Reflect=usemap] attribute DOMString useMap;
+ // FIXME: readonly attribute HTMLFormElement? form;
[CEReactions, Reflect] attribute DOMString width;
[CEReactions, Reflect] attribute DOMString height;
-
readonly attribute Document? contentDocument;
+ // FIXME: readonly attribute WindowProxy? contentWindow;
+ Document? getSVGDocument();
+ // FIXME: readonly attribute boolean willValidate;
+ // FIXME: readonly attribute ValidityState validity;
+ // FIXME: readonly attribute DOMString validationMessage;
+ // FIXME: boolean checkValidity();
+ // FIXME: boolean reportValidity();
+ // FIXME: undefined setCustomValidity(DOMString error);
+
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString archive;
[CEReactions, Reflect] attribute DOMString code;
[CEReactions, Reflect] attribute boolean declare;
+ // FIXME: [CEReactions] attribute unsigned long hspace;
[CEReactions, Reflect] attribute DOMString standby;
+ // FIXME: [CEReactions] attribute unsigned long vspace;
+ // FIXME: [CEReactions] attribute DOMString codeBase;
[CEReactions, Reflect=codetype] attribute DOMString codeType;
+ [CEReactions, Reflect=usemap] attribute DOMString useMap;
[CEReactions, LegacyNullToEmptyString, Reflect] attribute DOMString border;
- Document? getSVGDocument();
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLOptionElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLOptionElement.idl
index c80229a2f58a6be7710cd420ea2b18c39ca93476..94478a2d33f35c72ec3c8ef3c72a986cf2623120 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLOptionElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLOptionElement.idl
@@ -1,7 +1,7 @@
#import
// https://html.spec.whatwg.org/multipage/form-elements.html#htmloptionelement
-[Exposed=Window, LegacyFactoryFunction=Option(optional DOMString text = "", optional DOMString value, optional boolean defaultSelected = false, optional boolean selected = false)]
+[Exposed=Window, LegacyFactoryFunction=Option(optional DOMString text = "", optional DOMString value, optional boolean defaultSelected = false, optional boolean selected = false)]
interface HTMLOptionElement : HTMLElement {
[HTMLConstructor] constructor();
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLParagraphElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLParagraphElement.idl
index 0ca919f2e959bdb14c5caffd935ec9fdbb421330..f5eee8fb4d8bddc5f881c6ee8e16f02731d5580b 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLParagraphElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLParagraphElement.idl
@@ -6,6 +6,7 @@ interface HTMLParagraphElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLParamElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLParamElement.idl
index 3623c58f0898b507d1208de1ac6f62424d806bbb..15ecb19c2741b33931b92e9d44ec5aa2bed1cf77 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLParamElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLParamElement.idl
@@ -8,7 +8,6 @@ interface HTMLParamElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString name;
[CEReactions, Reflect] attribute DOMString value;
-
[CEReactions, Reflect] attribute DOMString type;
[CEReactions, Reflect=valuetype] attribute DOMString valueType;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLPreElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLPreElement.idl
index 6fa4e64e36756129d3c24fba87be89d7e5ab622d..c59ad960dc3dd0affc896fb176a64af69c4d2ae5 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLPreElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLPreElement.idl
@@ -5,6 +5,8 @@
interface HTMLPreElement : HTMLElement {
[HTMLConstructor] constructor();
+
+ // Obsolete
// FIXME: [CEReactions, Reflect] attribute long width;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.idl
index f4f4449bdef0312876f7b84c10228511bb870cc8..4bb4113d3ea0e357073d79f9418cf53908b73f95 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.idl
@@ -9,13 +9,18 @@ interface HTMLScriptElement : HTMLElement {
[CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect] attribute DOMString type;
[CEReactions, Reflect=nomodule] attribute boolean noModule;
+ // FIXME: [CEReactions] attribute boolean async;
[CEReactions, Reflect] attribute boolean defer;
[CEReactions, Reflect=crossorigin] attribute DOMString? crossOrigin;
+ // FIXME: [CEReactions] attribute DOMString text;
[CEReactions, Reflect] attribute DOMString integrity;
[CEReactions, Reflect=referrerpolicy] attribute DOMString referrerPolicy;
+ // FIXME: [SameObject, PutForwards=value] readonly attribute DOMTokenList blocking;
+ // FIXME: [CEReactions] attribute DOMString fetchPriority;
static boolean supports(DOMString type);
+ // Obsolete
[CEReactions, Reflect] attribute DOMString charset;
[CEReactions, Reflect] attribute DOMString event;
[CEReactions, Reflect=for] attribute DOMString htmlFor;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableCaptionElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableCaptionElement.idl
index b0413d9dae66c2cf0d88369c9fe7a8433b524863..5417ffa50e4f6a62c1fa55cf72ee3cf7ef4ac5af 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableCaptionElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableCaptionElement.idl
@@ -6,6 +6,7 @@ interface HTMLTableCaptionElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableCellElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableCellElement.idl
index d9fddd3bbb1997e2018681a3de40d8f4565cb14c..8fac4631a2e9ad454bc931cd335d4c69599194ab 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableCellElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableCellElement.idl
@@ -9,8 +9,12 @@ interface HTMLTableCellElement : HTMLElement {
[CEReactions] attribute unsigned long colSpan;
[CEReactions] attribute unsigned long rowSpan;
[CEReactions, Reflect] attribute DOMString headers;
- [CEReactions, Reflect] attribute DOMString abbr;
+ // FIXME: readonly attribute long cellIndex;
+ // FIXME: [CEReactions] attribute DOMString scope; // only conforming for th elements
+ [CEReactions, Reflect] attribute DOMString abbr; // only conforming for th elements
+
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString axis;
[CEReactions, Reflect] attribute DOMString height;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableColElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableColElement.idl
index b84f50403bf38bb9671fe3933d05948d2882b69c..0a479fe59a1b31db4ea5c355eaa127559cd57539 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableColElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableColElement.idl
@@ -6,6 +6,9 @@ interface HTMLTableColElement : HTMLElement {
[HTMLConstructor] constructor();
+ // FIXME: [CEReactions] attribute unsigned long span;
+
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect=char] attribute DOMString ch;
[CEReactions, Reflect=charoff] attribute DOMString chOff;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableElement.idl
index d6a2b1c8e1e495f88afb9d4097f9091a9ed1253d..0086606ea3f3def170ba0acd124c4262872b9ded 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableElement.idl
@@ -29,6 +29,7 @@ interface HTMLTableElement : HTMLElement {
HTMLTableRowElement insertRow(optional long index = -1);
[CEReactions] undefined deleteRow(long index);
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect] attribute DOMString border;
[CEReactions, Reflect] attribute DOMString frame;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableRowElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableRowElement.idl
index 9a35671b75a7119ea3c7803b8ed569d30e3fb3de..14a2ec7ab77867baa88f694e66c4ba3f0c533d60 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableRowElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableRowElement.idl
@@ -8,6 +8,13 @@ interface HTMLTableRowElement : HTMLElement {
[HTMLConstructor] constructor();
+ readonly attribute long rowIndex;
+ readonly attribute long sectionRowIndex;
+ [SameObject] readonly attribute HTMLCollection cells;
+ HTMLTableCellElement insertCell(optional long index = -1);
+ [CEReactions] undefined deleteCell(long index);
+
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect=char] attribute DOMString ch;
[CEReactions, Reflect=charoff] attribute DOMString chOff;
@@ -15,10 +22,4 @@ interface HTMLTableRowElement : HTMLElement {
[CEReactions, LegacyNullToEmptyString, Reflect=bgcolor] attribute DOMString bgColor;
- readonly attribute long rowIndex;
- readonly attribute long sectionRowIndex;
-
- [SameObject] readonly attribute HTMLCollection cells;
- HTMLTableCellElement insertCell(optional long index = -1);
- [CEReactions] undefined deleteCell(long index);
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTableSectionElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTableSectionElement.idl
index d1ff615f05fcb0035a3944b77abb22abc009f2d6..f61d78c31d1cdf9df7e00092ea27fbe714316070 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTableSectionElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTableSectionElement.idl
@@ -8,13 +8,14 @@ interface HTMLTableSectionElement : HTMLElement {
[HTMLConstructor] constructor();
+ [SameObject] readonly attribute HTMLCollection rows;
+ HTMLTableRowElement insertRow(optional long index = -1);
+ [CEReactions] undefined deleteRow(long index);
+
+ // Obsolete
[CEReactions, Reflect] attribute DOMString align;
[CEReactions, Reflect=char] attribute DOMString ch;
[CEReactions, Reflect=charoff] attribute DOMString chOff;
[CEReactions, Reflect=valign] attribute DOMString vAlign;
- [SameObject] readonly attribute HTMLCollection rows;
- HTMLTableRowElement insertRow(optional long index = -1);
- [CEReactions] undefined deleteRow(long index);
-
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTitleElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTitleElement.idl
index bbd34cfb5fc9034382df7df84fcaf1e5e4a72322..2b6030a86967d5faf38beaa2aedad6b6b85a997c 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTitleElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTitleElement.idl
@@ -6,4 +6,6 @@ interface HTMLTitleElement : HTMLElement {
[HTMLConstructor] constructor();
+ // FIXME: [CEReactions] attribute DOMString text;
+
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLTrackElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLTrackElement.idl
index f4ff0df6640148306a9789faa61634cbf7657fb2..d5855aa60d8fa704788775645ba0e8034a6bf8ec 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLTrackElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLTrackElement.idl
@@ -6,9 +6,18 @@ interface HTMLTrackElement : HTMLElement {
[HTMLConstructor] constructor();
+ // FIXME: [CEReactions] attribute DOMString kind;
[CEReactions, Reflect] attribute DOMString src;
[CEReactions, Reflect] attribute DOMString srclang;
[CEReactions, Reflect] attribute DOMString label;
[CEReactions, Reflect] attribute boolean default;
+ // FIXME: [const unsigned short NONE = 0;
+ // FIXME: [const unsigned short LOADING = 1;
+ // FIXME: [const unsigned short LOADED = 2;
+ // FIXME: [const unsigned short ERROR = 3;
+ // FIXME: [readonly attribute unsigned short readyState;
+
+ // FIXME: [readonly attribute TextTrack track;
+
};
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLUListElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLUListElement.idl
index 207ffc08d7a13fed9bef79cfc0177980d67e95a3..46517a8f05cf4ce44ce08e7edf6db4f9a2034bc2 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLUListElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLUListElement.idl
@@ -6,6 +6,7 @@ interface HTMLUListElement : HTMLElement {
[HTMLConstructor] constructor();
+ // Obsolete
[CEReactions, Reflect] attribute boolean compact;
[CEReactions, Reflect] attribute DOMString type;
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLVideoElement.idl b/Userland/Libraries/LibWeb/HTML/HTMLVideoElement.idl
index 4e270ba3bf519a9d02bd07cf829a83b4e39b5160..4d0daf202273d18567d3516bae48eb6a18d02490 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLVideoElement.idl
+++ b/Userland/Libraries/LibWeb/HTML/HTMLVideoElement.idl
@@ -6,6 +6,8 @@ interface HTMLVideoElement : HTMLMediaElement {
[HTMLConstructor] constructor();
+ // FIXME: [CEReactions] attribute unsigned long width;
+ // FIXME: [CEReactions] attribute unsigned long height;
readonly attribute unsigned long videoWidth;
readonly attribute unsigned long videoHeight;
[CEReactions, Reflect] attribute USVString poster;
diff --git a/Userland/Libraries/LibWeb/MathML/MathMLElement.cpp b/Userland/Libraries/LibWeb/MathML/MathMLElement.cpp
index 63d61d257a565210a3f702f9cff5b1ef506c9f7c..5fe84814e4b6e187e36410313fba8f76b5dc75d3 100644
--- a/Userland/Libraries/LibWeb/MathML/MathMLElement.cpp
+++ b/Userland/Libraries/LibWeb/MathML/MathMLElement.cpp
@@ -33,4 +33,14 @@ Optional MathMLElement::default_role() const
return {};
}
+void MathMLElement::focus()
+{
+ dbgln("(STUBBED) MathMLElement::focus()");
+}
+
+void MathMLElement::blur()
+{
+ dbgln("(STUBBED) MathMLElement::blur()");
+}
+
}
diff --git a/Userland/Libraries/LibWeb/MathML/MathMLElement.h b/Userland/Libraries/LibWeb/MathML/MathMLElement.h
index d9466a3d04da5a77b07a55bad6c823405b2678da..ec4682f288aa2aab64ef391e50108391445217dc 100644
--- a/Userland/Libraries/LibWeb/MathML/MathMLElement.h
+++ b/Userland/Libraries/LibWeb/MathML/MathMLElement.h
@@ -24,6 +24,9 @@ public:
virtual Optional default_role() const override;
+ void focus();
+ void blur();
+
protected:
virtual DOM::EventTarget& global_event_handlers_to_event_target(FlyString const&) override { return *this; }
diff --git a/Userland/Libraries/LibWeb/SVG/SVGElement.cpp b/Userland/Libraries/LibWeb/SVG/SVGElement.cpp
index 520a396dcf90366d98902d16b550cb4858bd3363..a7f8582b6582893927ae3def94e18711f8b25ba4 100644
--- a/Userland/Libraries/LibWeb/SVG/SVGElement.cpp
+++ b/Userland/Libraries/LibWeb/SVG/SVGElement.cpp
@@ -97,4 +97,14 @@ void SVGElement::remove_from_use_element_that_reference_this()
});
}
+void SVGElement::focus()
+{
+ dbgln("(STUBBED) SVGElement::focus()");
+}
+
+void SVGElement::blur()
+{
+ dbgln("(STUBBED) SVGElement::blur()");
+}
+
}
diff --git a/Userland/Libraries/LibWeb/SVG/SVGElement.h b/Userland/Libraries/LibWeb/SVG/SVGElement.h
index 69055ee22cddff1f7e8356b33cb9e14ff2eadc96..1e5a4075c39d5b8f73d5853f000eced1973f3556 100644
--- a/Userland/Libraries/LibWeb/SVG/SVGElement.h
+++ b/Userland/Libraries/LibWeb/SVG/SVGElement.h
@@ -26,6 +26,9 @@ public:
HTML::DOMStringMap* dataset() { return m_dataset.ptr(); }
HTML::DOMStringMap const* dataset() const { return m_dataset.ptr(); }
+ void focus();
+ void blur();
+
protected:
SVGElement(DOM::Document&, DOM::QualifiedName);