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);