From 169d24ae2ec8b3d6774894ffacd4a96caf59a1aa Mon Sep 17 00:00:00 2001 From: Bastiaan van der Plaat Date: Wed, 25 Oct 2023 17:27:19 +0200 Subject: [PATCH] LibWeb: Add comments and missing items of various IDL files --- .../Libraries/LibWeb/CSS/CSSConditionRule.idl | 1 + .../Libraries/LibWeb/CSS/CSSFontFaceRule.idl | 1 + .../Libraries/LibWeb/CSS/CSSGroupingRule.idl | 1 + .../Libraries/LibWeb/CSS/CSSImportRule.idl | 5 ++- .../Libraries/LibWeb/CSS/CSSKeyframeRule.idl | 1 + .../Libraries/LibWeb/CSS/CSSKeyframesRule.idl | 13 +++--- .../Libraries/LibWeb/CSS/CSSMediaRule.idl | 1 + Userland/Libraries/LibWeb/CSS/CSSRule.idl | 4 +- Userland/Libraries/LibWeb/CSS/CSSRuleList.idl | 1 + .../LibWeb/CSS/CSSStyleDeclaration.idl | 1 + .../Libraries/LibWeb/CSS/CSSStyleRule.idl | 1 + .../Libraries/LibWeb/CSS/CSSStyleSheet.idl | 17 +++++++- .../Libraries/LibWeb/CSS/CSSSupportsRule.idl | 1 + Userland/Libraries/LibWeb/CSS/MediaList.idl | 1 + .../Libraries/LibWeb/CSS/MediaQueryList.idl | 1 + Userland/Libraries/LibWeb/CSS/StyleSheet.idl | 6 ++- .../Libraries/LibWeb/CSS/StyleSheetList.idl | 1 + .../Libraries/LibWeb/CSS/VisualViewport.idl | 1 + Userland/Libraries/LibWeb/Crypto/Crypto.idl | 9 +++-- .../Libraries/LibWeb/Crypto/SubtleCrypto.idl | 16 ++++++++ .../Libraries/LibWeb/DOM/AbortController.idl | 1 + Userland/Libraries/LibWeb/DOM/AbortSignal.idl | 3 ++ .../Libraries/LibWeb/DOM/AbstractRange.idl | 1 + Userland/Libraries/LibWeb/DOM/Attr.idl | 3 +- .../Libraries/LibWeb/DOM/CDATASection.idl | 1 + .../Libraries/LibWeb/DOM/CharacterData.idl | 3 +- Userland/Libraries/LibWeb/DOM/CustomEvent.idl | 1 + .../Libraries/LibWeb/DOM/DocumentFragment.idl | 1 + Userland/Libraries/LibWeb/DOM/Event.idl | 2 +- .../Libraries/LibWeb/DOM/HTMLCollection.idl | 1 + .../Libraries/LibWeb/DOM/MutationObserver.idl | 1 + .../Libraries/LibWeb/DOM/MutationRecord.idl | 1 + .../Libraries/LibWeb/DOM/NamedNodeMap.idl | 1 + .../Libraries/LibWeb/DOM/NodeIterator.idl | 1 + Userland/Libraries/LibWeb/DOM/NodeList.idl | 1 + Userland/Libraries/LibWeb/DOM/Range.idl | 1 + Userland/Libraries/LibWeb/DOM/StaticRange.idl | 1 + Userland/Libraries/LibWeb/DOM/TreeWalker.idl | 1 + Userland/Libraries/LibWeb/DOM/XMLDocument.idl | 1 + .../LibWeb/DOMParsing/XMLSerializer.idl | 1 + Userland/Libraries/LibWeb/Fetch/Headers.idl | 2 + Userland/Libraries/LibWeb/Fetch/Response.idl | 1 + Userland/Libraries/LibWeb/FileAPI/Blob.idl | 1 + Userland/Libraries/LibWeb/FileAPI/File.idl | 1 + .../Libraries/LibWeb/FileAPI/FileList.idl | 5 ++- .../LibWeb/HTML/Canvas/CanvasCompositing.idl | 6 +-- .../Libraries/LibWeb/HTML/CanvasPattern.idl | 4 +- .../NavigationCurrentEntryChangeEvent.idl | 12 +++--- .../LibWeb/HTML/NavigatorLanguage.idl | 8 ++-- .../Libraries/LibWeb/HTML/TextMetrics.idl | 28 ++++++------- .../IntersectionObserver.idl | 4 ++ .../NavigationTiming/PerformanceTiming.idl | 1 + .../LibWeb/ResizeObserver/ResizeObserver.idl | 6 ++- .../LibWeb/SVG/SVGGradientElement.idl | 17 ++++---- .../LibWeb/SVG/SVGTextContentElement.idl | 31 +++++++------- .../LibWeb/SVG/SVGTextPositioningElement.idl | 10 ++--- .../Libraries/LibWeb/Selection/Selection.idl | 1 + .../Streams/ByteLengthQueuingStrategy.idl | 1 - .../LibWeb/Streams/CountQueuingStrategy.idl | 1 - .../Streams/ReadableByteStreamController.idl | 5 +-- .../LibWeb/Streams/ReadableStream.idl | 7 ++++ .../Streams/ReadableStreamBYOBReader.idl | 3 +- .../Streams/ReadableStreamBYOBRequest.idl | 6 +-- .../LibWeb/Streams/WritableStream.idl | 1 + .../WritableStreamDefaultController.idl | 1 + .../Streams/WritableStreamDefaultWriter.idl | 1 + .../Libraries/LibWeb/UIEvents/FocusEvent.idl | 2 + .../Libraries/LibWeb/UIEvents/UIEvent.idl | 4 +- .../Libraries/LibWeb/UIEvents/WheelEvent.idl | 1 + .../Libraries/LibWeb/URL/URLSearchParams.idl | 23 ++++++----- .../LibWeb/UserTiming/PerformanceMeasure.idl | 2 + .../LibWeb/WebAudio/AudioContext.idl | 10 ++--- .../Libraries/LibWeb/WebSockets/WebSocket.idl | 5 ++- .../Libraries/LibWeb/XHR/XMLHttpRequest.idl | 40 ++++++++++--------- .../LibWeb/XHR/XMLHttpRequestEventTarget.idl | 1 + 75 files changed, 233 insertions(+), 129 deletions(-) diff --git a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl index 73c336eaaa..c52e78582d 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/css-conditional-3/#the-cssconditionrule-interface [Exposed=Window] interface CSSConditionRule : CSSGroupingRule { attribute CSSOMString conditionText; diff --git a/Userland/Libraries/LibWeb/CSS/CSSFontFaceRule.idl b/Userland/Libraries/LibWeb/CSS/CSSFontFaceRule.idl index cf5701a19b..7d6591eafd 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSFontFaceRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSFontFaceRule.idl @@ -1,6 +1,7 @@ #import #import +// https://drafts.csswg.org/css-fonts/#om-fontface [Exposed=Window] interface CSSFontFaceRule : CSSRule { readonly attribute CSSStyleDeclaration style; diff --git a/Userland/Libraries/LibWeb/CSS/CSSGroupingRule.idl b/Userland/Libraries/LibWeb/CSS/CSSGroupingRule.idl index 6f8280a0fd..3b6b03f7e9 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSGroupingRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSGroupingRule.idl @@ -1,6 +1,7 @@ #import #import +// https://drafts.csswg.org/cssom/#the-cssgroupingrule-interface [Exposed=Window] interface CSSGroupingRule : CSSRule { [SameObject, ImplementedAs=css_rules_for_bindings] readonly attribute CSSRuleList cssRules; diff --git a/Userland/Libraries/LibWeb/CSS/CSSImportRule.idl b/Userland/Libraries/LibWeb/CSS/CSSImportRule.idl index 838e64d77a..bf0984de1d 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSImportRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSImportRule.idl @@ -2,9 +2,12 @@ #import #import +// https://drafts.csswg.org/cssom/#the-cssimportrule-interface [Exposed=Window] interface CSSImportRule : CSSRule { readonly attribute USVString href; - // [SameObject, PutForwards=mediaText] readonly attribute MediaList media; + // FIXME: [SameObject, PutForwards=mediaText] readonly attribute MediaList media; [SameObject, ImplementedAs=style_sheet_for_bindings] readonly attribute CSSStyleSheet styleSheet; + // FIXME: readonly attribute CSSOMString? layerName; + // FIXME: readonly attribute CSSOMString? supportsText; }; diff --git a/Userland/Libraries/LibWeb/CSS/CSSKeyframeRule.idl b/Userland/Libraries/LibWeb/CSS/CSSKeyframeRule.idl index 4cf2c131e3..b5bd0a6242 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSKeyframeRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSKeyframeRule.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/css-animations-1/#interface-csskeyframerule-idl [Exposed=Window] interface CSSKeyframeRule : CSSRule { attribute CSSOMString keyText; diff --git a/Userland/Libraries/LibWeb/CSS/CSSKeyframesRule.idl b/Userland/Libraries/LibWeb/CSS/CSSKeyframesRule.idl index 2f8d3d353e..c0b38c9c6b 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSKeyframesRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSKeyframesRule.idl @@ -1,17 +1,14 @@ #import +// https://drafts.csswg.org/css-animations-1/#interface-csskeyframesrule [Exposed=Window] interface CSSKeyframesRule : CSSRule { attribute CSSOMString name; + // FIXME: readonly attribute CSSRuleList cssRules; readonly attribute unsigned long length; -// FIXME: Implement this -// readonly attribute CSSRuleList cssRules; - getter CSSKeyframeRule (unsigned long index); - -// FIXME: Implement these -// undefined appendRule(CSSOMString rule); -// undefined deleteRule(CSSOMString select); -// CSSKeyframeRule? findRule(CSSOMString select); + // FIXME: undefined appendRule(CSSOMString rule); + // FIXME: undefined deleteRule(CSSOMString select); + // FIXME: CSSKeyframeRule? findRule(CSSOMString select); }; diff --git a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.idl b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.idl index 72e3c55454..7aea427789 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.idl @@ -1,6 +1,7 @@ #import #import +// https://drafts.csswg.org/css-conditional-3/#the-cssmediarule-interface [Exposed=Window] interface CSSMediaRule : CSSConditionRule { [SameObject, PutForwards=mediaText] readonly attribute MediaList media; diff --git a/Userland/Libraries/LibWeb/CSS/CSSRule.idl b/Userland/Libraries/LibWeb/CSS/CSSRule.idl index 0c9d44327f..c6bb86ea87 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSRule.idl @@ -1,15 +1,15 @@ #import +// https://www.w3.org/TR/cssom/#the-cssrule-interface [Exposed=Window] interface CSSRule { attribute CSSOMString cssText; - readonly attribute CSSRule? parentRule; readonly attribute CSSStyleSheet? parentStyleSheet; + // the following attribute and constants are historical readonly attribute unsigned short type; - const unsigned short STYLE_RULE = 1; const unsigned short CHARSET_RULE = 2; const unsigned short IMPORT_RULE = 3; diff --git a/Userland/Libraries/LibWeb/CSS/CSSRuleList.idl b/Userland/Libraries/LibWeb/CSS/CSSRuleList.idl index 67b4a66cb7..3ebee19877 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSRuleList.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSRuleList.idl @@ -1,5 +1,6 @@ #import +// https://www.w3.org/TR/cssom/#the-cssrulelist-interface [Exposed=Window] interface CSSRuleList { diff --git a/Userland/Libraries/LibWeb/CSS/CSSStyleDeclaration.idl b/Userland/Libraries/LibWeb/CSS/CSSStyleDeclaration.idl index 66078eb20a..d2eb2060f0 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSStyleDeclaration.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSStyleDeclaration.idl @@ -15,4 +15,5 @@ interface CSSStyleDeclaration { // FIXME: readonly attribute CSSRule? parentRule; // FIXME: [CEReactions] attribute [LegacyNullToEmptyString] CSSOMString cssFloat; + }; diff --git a/Userland/Libraries/LibWeb/CSS/CSSStyleRule.idl b/Userland/Libraries/LibWeb/CSS/CSSStyleRule.idl index 028b97a5e7..84d19e9071 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSStyleRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSStyleRule.idl @@ -1,6 +1,7 @@ #import #import +// https://drafts.csswg.org/cssom/#the-cssstylerule-interface [Exposed=Window] interface CSSStyleRule : CSSRule { diff --git a/Userland/Libraries/LibWeb/CSS/CSSStyleSheet.idl b/Userland/Libraries/LibWeb/CSS/CSSStyleSheet.idl index b026c76c80..9d17a15370 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSStyleSheet.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSStyleSheet.idl @@ -4,9 +4,24 @@ // https://drafts.csswg.org/cssom/#cssstylesheet [Exposed=Window] interface CSSStyleSheet : StyleSheet { - // readonly attribute CSSRule? ownerRule; + // FIXME: constructor(optional CSSStyleSheetInit options = {}); + + // FIXME: readonly attribute CSSRule? ownerRule; [SameObject] readonly attribute CSSRuleList cssRules; unsigned long insertRule(CSSOMString rule, optional unsigned long index = 0); undefined deleteRule(unsigned long index); + + // FIXME: Promise replace(USVString text); + // FIXME: undefined replaceSync(USVString text); + + // https://drafts.csswg.org/cssom/#legacy-css-style-sheet-members + // FIXME: [SameObject] readonly attribute CSSRuleList rules; + // FIXME: long addRule(optional DOMString selector = "undefined", optional DOMString style = "undefined", optional unsigned long index); undefined removeRule(unsigned long index); }; + +dictionary CSSStyleSheetInit { + DOMString baseURL = null; + (MediaList or DOMString) media = ""; + boolean disabled = false; +}; diff --git a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.idl b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.idl index f60b2a2ebf..4c3c19930c 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.idl +++ b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/css-conditional-3/#the-csssupportsrule-interface [Exposed=Window] interface CSSSupportsRule : CSSConditionRule { }; diff --git a/Userland/Libraries/LibWeb/CSS/MediaList.idl b/Userland/Libraries/LibWeb/CSS/MediaList.idl index 63eb6bfc5a..a7557423e5 100644 --- a/Userland/Libraries/LibWeb/CSS/MediaList.idl +++ b/Userland/Libraries/LibWeb/CSS/MediaList.idl @@ -1,3 +1,4 @@ +// https://www.w3.org/TR/cssom-1/#the-medialist-interface [Exposed=Window] interface MediaList { [LegacyNullToEmptyString] stringifier attribute CSSOMString mediaText; diff --git a/Userland/Libraries/LibWeb/CSS/MediaQueryList.idl b/Userland/Libraries/LibWeb/CSS/MediaQueryList.idl index 21178328bb..de6c6f73f7 100644 --- a/Userland/Libraries/LibWeb/CSS/MediaQueryList.idl +++ b/Userland/Libraries/LibWeb/CSS/MediaQueryList.idl @@ -1,6 +1,7 @@ #import #import +// https://drafts.csswg.org/cssom-view/#the-mediaquerylist-interface [Exposed=Window] interface MediaQueryList : EventTarget { readonly attribute CSSOMString media; diff --git a/Userland/Libraries/LibWeb/CSS/StyleSheet.idl b/Userland/Libraries/LibWeb/CSS/StyleSheet.idl index 5109cde785..8ef9cdb8d2 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleSheet.idl +++ b/Userland/Libraries/LibWeb/CSS/StyleSheet.idl @@ -6,10 +6,12 @@ [Exposed=Window] interface StyleSheet { - readonly attribute Element? ownerNode; readonly attribute CSSOMString type; - readonly attribute USVString? href; + + // FIXME: readonly attribute (Element or ProcessingInstruction)? ownerNode; + readonly attribute Element? ownerNode; + readonly attribute CSSStyleSheet? parentStyleSheet; readonly attribute DOMString? title; [SameObject, PutForwards=mediaText] readonly attribute MediaList media; diff --git a/Userland/Libraries/LibWeb/CSS/StyleSheetList.idl b/Userland/Libraries/LibWeb/CSS/StyleSheetList.idl index c617626611..207e28d4a8 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleSheetList.idl +++ b/Userland/Libraries/LibWeb/CSS/StyleSheetList.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/cssom/#the-stylesheetlist-interface [Exposed=Window] interface StyleSheetList { getter CSSStyleSheet? item(unsigned long index); diff --git a/Userland/Libraries/LibWeb/CSS/VisualViewport.idl b/Userland/Libraries/LibWeb/CSS/VisualViewport.idl index 63d3c5515f..e9d103157c 100644 --- a/Userland/Libraries/LibWeb/CSS/VisualViewport.idl +++ b/Userland/Libraries/LibWeb/CSS/VisualViewport.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/cssom-view/#the-visualviewport-interface [Exposed=Window] interface VisualViewport : EventTarget { diff --git a/Userland/Libraries/LibWeb/Crypto/Crypto.idl b/Userland/Libraries/LibWeb/Crypto/Crypto.idl index fbf28fcd20..1924b6fce0 100644 --- a/Userland/Libraries/LibWeb/Crypto/Crypto.idl +++ b/Userland/Libraries/LibWeb/Crypto/Crypto.idl @@ -1,11 +1,12 @@ #import +// https://w3c.github.io/webcrypto/#crypto-interface [Exposed=(Window,Worker)] interface Crypto { - [SecureContext] readonly attribute SubtleCrypto subtle; + [SecureContext] readonly attribute SubtleCrypto subtle; - // FIXME: the argument and the return value should be of type ArrayBufferView - any getRandomValues(any array); + // FIXME: the argument and the return value should be of type ArrayBufferView + any getRandomValues(any array); - [SecureContext] DOMString randomUUID(); + [SecureContext] DOMString randomUUID(); }; diff --git a/Userland/Libraries/LibWeb/Crypto/SubtleCrypto.idl b/Userland/Libraries/LibWeb/Crypto/SubtleCrypto.idl index 99f867b2c6..def868c00e 100644 --- a/Userland/Libraries/LibWeb/Crypto/SubtleCrypto.idl +++ b/Userland/Libraries/LibWeb/Crypto/SubtleCrypto.idl @@ -1,5 +1,21 @@ +// https://w3c.github.io/webcrypto/#subtlecrypto-interface [SecureContext,Exposed=(Window,Worker)] interface SubtleCrypto { + // FIXME: Promise encrypt(AlgorithmIdentifier algorithm, CryptoKey key, BufferSource data); + // FIXME: Promise decrypt(AlgorithmIdentifier algorithm, CryptoKey key, BufferSource data); + // FIXME: Promise sign(AlgorithmIdentifier algorithm, CryptoKey key, BufferSource data); + // FIXME: Promise verify(AlgorithmIdentifier algorithm, CryptoKey key, BufferSource signature, BufferSource data); + // FIXME: Add support for AlgorithmIdentifier ("typedef (object or DOMString)") Promise digest(DOMString algorithm, BufferSource data); + + // FIXME: Promise generateKey(AlgorithmIdentifier algorithm, boolean extractable, sequence keyUsages); + // FIXME: Promise deriveKey(AlgorithmIdentifier algorithm, CryptoKey baseKey, AlgorithmIdentifier derivedKeyType, boolean extractable, sequence keyUsages ); + // FIXME: Promise deriveBits(AlgorithmIdentifier algorithm, CryptoKey baseKey, unsigned long length); + + // FIXME: Promise importKey(KeyFormat format, (BufferSource or JsonWebKey) keyData, AlgorithmIdentifier algorithm, boolean extractable, sequence keyUsages); + // FIXME: Promise exportKey(KeyFormat format, CryptoKey key); + + // FIXME: Promise wrapKey(KeyFormat format, CryptoKey key, CryptoKey wrappingKey, AlgorithmIdentifier wrapAlgorithm); + // FIXME: Promise unwrapKey(KeyFormat format, BufferSource wrappedKey, CryptoKey unwrappingKey, AlgorithmIdentifier unwrapAlgorithm, AlgorithmIdentifier unwrappedKeyAlgorithm, boolean extractable, sequence keyUsages); }; diff --git a/Userland/Libraries/LibWeb/DOM/AbortController.idl b/Userland/Libraries/LibWeb/DOM/AbortController.idl index c8b67f8bd0..657d29b127 100644 --- a/Userland/Libraries/LibWeb/DOM/AbortController.idl +++ b/Userland/Libraries/LibWeb/DOM/AbortController.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#interface-abortcontroller [Exposed=(Window,Worker)] interface AbortController { constructor(); diff --git a/Userland/Libraries/LibWeb/DOM/AbortSignal.idl b/Userland/Libraries/LibWeb/DOM/AbortSignal.idl index 4c11a9ba6a..b7e2d02ea5 100644 --- a/Userland/Libraries/LibWeb/DOM/AbortSignal.idl +++ b/Userland/Libraries/LibWeb/DOM/AbortSignal.idl @@ -1,9 +1,12 @@ #import #import +// https://dom.spec.whatwg.org/#interface-AbortSignal [Exposed=(Window,Worker), CustomVisit] interface AbortSignal : EventTarget { // FIXME: [NewObject] static AbortSignal abort(optional any reason); + // FIXME: [Exposed=(Window,Worker), NewObject] static AbortSignal timeout([EnforceRange] unsigned long long milliseconds); + // FIXME: [NewObject] static AbortSignal _any(sequence signals); readonly attribute boolean aborted; readonly attribute any reason; diff --git a/Userland/Libraries/LibWeb/DOM/AbstractRange.idl b/Userland/Libraries/LibWeb/DOM/AbstractRange.idl index 0b29d41450..cf9cde311a 100644 --- a/Userland/Libraries/LibWeb/DOM/AbstractRange.idl +++ b/Userland/Libraries/LibWeb/DOM/AbstractRange.idl @@ -1,3 +1,4 @@ +// https://dom.spec.whatwg.org/#interface-abstractrange [Exposed=Window] interface AbstractRange { readonly attribute Node startContainer; diff --git a/Userland/Libraries/LibWeb/DOM/Attr.idl b/Userland/Libraries/LibWeb/DOM/Attr.idl index 3b5993e7e0..c72ae6c867 100644 --- a/Userland/Libraries/LibWeb/DOM/Attr.idl +++ b/Userland/Libraries/LibWeb/DOM/Attr.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-attr [Exposed=Window] interface Attr : Node { readonly attribute DOMString? namespaceURI; @@ -11,5 +12,5 @@ interface Attr : Node { readonly attribute Element? ownerElement; - readonly attribute boolean specified; + readonly attribute boolean specified; // useless; always returns true }; diff --git a/Userland/Libraries/LibWeb/DOM/CDATASection.idl b/Userland/Libraries/LibWeb/DOM/CDATASection.idl index 22f66ba820..e3e8019895 100644 --- a/Userland/Libraries/LibWeb/DOM/CDATASection.idl +++ b/Userland/Libraries/LibWeb/DOM/CDATASection.idl @@ -1,3 +1,4 @@ +// https://dom.spec.whatwg.org/#interface-cdatasection [Exposed=Window] interface CDATASection : Text { }; diff --git a/Userland/Libraries/LibWeb/DOM/CharacterData.idl b/Userland/Libraries/LibWeb/DOM/CharacterData.idl index 324a9c7bb0..9d539619f7 100644 --- a/Userland/Libraries/LibWeb/DOM/CharacterData.idl +++ b/Userland/Libraries/LibWeb/DOM/CharacterData.idl @@ -14,8 +14,9 @@ interface CharacterData : Node { undefined deleteData(unsigned long offset, unsigned long count); undefined replaceData(unsigned long offset, unsigned long count, DOMString data); - readonly attribute Element? nextElementSibling; + // https://dom.spec.whatwg.org/#interface-nondocumenttypechildnode readonly attribute Element? previousElementSibling; + readonly attribute Element? nextElementSibling; }; CharacterData includes ChildNode; diff --git a/Userland/Libraries/LibWeb/DOM/CustomEvent.idl b/Userland/Libraries/LibWeb/DOM/CustomEvent.idl index 17e69acd07..9c373bb132 100644 --- a/Userland/Libraries/LibWeb/DOM/CustomEvent.idl +++ b/Userland/Libraries/LibWeb/DOM/CustomEvent.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#interface-customevent [Exposed=(Window,Worker)] interface CustomEvent : Event { constructor(DOMString type, optional CustomEventInit eventInitDict = {}); diff --git a/Userland/Libraries/LibWeb/DOM/DocumentFragment.idl b/Userland/Libraries/LibWeb/DOM/DocumentFragment.idl index 297a116e5c..9836cd476c 100644 --- a/Userland/Libraries/LibWeb/DOM/DocumentFragment.idl +++ b/Userland/Libraries/LibWeb/DOM/DocumentFragment.idl @@ -9,6 +9,7 @@ interface DocumentFragment : Node { constructor(); + // https://dom.spec.whatwg.org/#interface-nonelementparentnode Element? getElementById(DOMString id); }; diff --git a/Userland/Libraries/LibWeb/DOM/Event.idl b/Userland/Libraries/LibWeb/DOM/Event.idl index ccae48396c..4bccbf4edf 100644 --- a/Userland/Libraries/LibWeb/DOM/Event.idl +++ b/Userland/Libraries/LibWeb/DOM/Event.idl @@ -8,7 +8,7 @@ interface Event { readonly attribute DOMString type; readonly attribute EventTarget? target; - readonly attribute EventTarget? srcElement; + readonly attribute EventTarget? srcElement; // legacy readonly attribute EventTarget? currentTarget; sequence composedPath(); diff --git a/Userland/Libraries/LibWeb/DOM/HTMLCollection.idl b/Userland/Libraries/LibWeb/DOM/HTMLCollection.idl index 0bcf02221c..dff67c2b4d 100644 --- a/Userland/Libraries/LibWeb/DOM/HTMLCollection.idl +++ b/Userland/Libraries/LibWeb/DOM/HTMLCollection.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#interface-htmlcollection [Exposed=Window, LegacyUnenumerableNamedProperties] interface HTMLCollection { diff --git a/Userland/Libraries/LibWeb/DOM/MutationObserver.idl b/Userland/Libraries/LibWeb/DOM/MutationObserver.idl index 3e24042199..7c24ce41ef 100644 --- a/Userland/Libraries/LibWeb/DOM/MutationObserver.idl +++ b/Userland/Libraries/LibWeb/DOM/MutationObserver.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-mutationobserver [Exposed=Window] interface MutationObserver { diff --git a/Userland/Libraries/LibWeb/DOM/MutationRecord.idl b/Userland/Libraries/LibWeb/DOM/MutationRecord.idl index 0914177892..db8a4790cb 100644 --- a/Userland/Libraries/LibWeb/DOM/MutationRecord.idl +++ b/Userland/Libraries/LibWeb/DOM/MutationRecord.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-mutationrecord [Exposed=Window] interface MutationRecord { diff --git a/Userland/Libraries/LibWeb/DOM/NamedNodeMap.idl b/Userland/Libraries/LibWeb/DOM/NamedNodeMap.idl index cf52b16552..77d50f41d1 100644 --- a/Userland/Libraries/LibWeb/DOM/NamedNodeMap.idl +++ b/Userland/Libraries/LibWeb/DOM/NamedNodeMap.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#interface-namednodemap [Exposed=Window, LegacyUnenumerableNamedProperties] interface NamedNodeMap { readonly attribute unsigned long length; diff --git a/Userland/Libraries/LibWeb/DOM/NodeIterator.idl b/Userland/Libraries/LibWeb/DOM/NodeIterator.idl index b46a41ff45..576b2e625d 100644 --- a/Userland/Libraries/LibWeb/DOM/NodeIterator.idl +++ b/Userland/Libraries/LibWeb/DOM/NodeIterator.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-nodeiterator [Exposed=Window] interface NodeIterator { diff --git a/Userland/Libraries/LibWeb/DOM/NodeList.idl b/Userland/Libraries/LibWeb/DOM/NodeList.idl index 8a4fa5a3aa..bf09e70046 100644 --- a/Userland/Libraries/LibWeb/DOM/NodeList.idl +++ b/Userland/Libraries/LibWeb/DOM/NodeList.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#interface-nodelist [Exposed=Window] interface NodeList { getter Node? item(unsigned long index); diff --git a/Userland/Libraries/LibWeb/DOM/Range.idl b/Userland/Libraries/LibWeb/DOM/Range.idl index 9ab4b3d4ab..51f8eef3a5 100644 --- a/Userland/Libraries/LibWeb/DOM/Range.idl +++ b/Userland/Libraries/LibWeb/DOM/Range.idl @@ -2,6 +2,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-range [Exposed=Window] interface Range : AbstractRange { diff --git a/Userland/Libraries/LibWeb/DOM/StaticRange.idl b/Userland/Libraries/LibWeb/DOM/StaticRange.idl index cc3b747f29..9e9a3567bc 100644 --- a/Userland/Libraries/LibWeb/DOM/StaticRange.idl +++ b/Userland/Libraries/LibWeb/DOM/StaticRange.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#staticrange [Exposed=Window] interface StaticRange : AbstractRange { constructor(StaticRangeInit init); diff --git a/Userland/Libraries/LibWeb/DOM/TreeWalker.idl b/Userland/Libraries/LibWeb/DOM/TreeWalker.idl index 780f2aa1b1..876ad210be 100644 --- a/Userland/Libraries/LibWeb/DOM/TreeWalker.idl +++ b/Userland/Libraries/LibWeb/DOM/TreeWalker.idl @@ -1,6 +1,7 @@ #import #import +// https://dom.spec.whatwg.org/#interface-treewalker [Exposed=Window] interface TreeWalker { diff --git a/Userland/Libraries/LibWeb/DOM/XMLDocument.idl b/Userland/Libraries/LibWeb/DOM/XMLDocument.idl index 50cd1cce35..d415bccd12 100644 --- a/Userland/Libraries/LibWeb/DOM/XMLDocument.idl +++ b/Userland/Libraries/LibWeb/DOM/XMLDocument.idl @@ -1,5 +1,6 @@ #import +// https://dom.spec.whatwg.org/#xmldocument [Exposed=Window] interface XMLDocument : Document { }; diff --git a/Userland/Libraries/LibWeb/DOMParsing/XMLSerializer.idl b/Userland/Libraries/LibWeb/DOMParsing/XMLSerializer.idl index 8c190bf170..5799ffbf71 100644 --- a/Userland/Libraries/LibWeb/DOMParsing/XMLSerializer.idl +++ b/Userland/Libraries/LibWeb/DOMParsing/XMLSerializer.idl @@ -1,5 +1,6 @@ #import +// https://w3c.github.io/DOM-Parsing/#the-xmlserializer-interface [Exposed=Window] interface XMLSerializer { constructor(); diff --git a/Userland/Libraries/LibWeb/Fetch/Headers.idl b/Userland/Libraries/LibWeb/Fetch/Headers.idl index a495339dd5..b7377c2a2c 100644 --- a/Userland/Libraries/LibWeb/Fetch/Headers.idl +++ b/Userland/Libraries/LibWeb/Fetch/Headers.idl @@ -1,5 +1,7 @@ +// https://fetch.spec.whatwg.org/#typedefdef-headersinit typedef (sequence> or record) HeadersInit; +// https://fetch.spec.whatwg.org/#headers [Exposed=(Window,Worker)] interface Headers { constructor(optional HeadersInit init); diff --git a/Userland/Libraries/LibWeb/Fetch/Response.idl b/Userland/Libraries/LibWeb/Fetch/Response.idl index 467f7f18bb..9deda44a8d 100644 --- a/Userland/Libraries/LibWeb/Fetch/Response.idl +++ b/Userland/Libraries/LibWeb/Fetch/Response.idl @@ -2,6 +2,7 @@ #import #import +// https://fetch.spec.whatwg.org/#response-class [Exposed=(Window,Worker)] interface Response { constructor(optional BodyInit? body = null, optional ResponseInit init = {}); diff --git a/Userland/Libraries/LibWeb/FileAPI/Blob.idl b/Userland/Libraries/LibWeb/FileAPI/Blob.idl index 9bfe5d8895..c6ebe2ec10 100644 --- a/Userland/Libraries/LibWeb/FileAPI/Blob.idl +++ b/Userland/Libraries/LibWeb/FileAPI/Blob.idl @@ -1,3 +1,4 @@ +// https://w3c.github.io/FileAPI/#blob-section [Exposed=(Window,Worker), Serializable] interface Blob { constructor(optional sequence blobParts, optional BlobPropertyBag options = {}); diff --git a/Userland/Libraries/LibWeb/FileAPI/File.idl b/Userland/Libraries/LibWeb/FileAPI/File.idl index 4f5712fb9e..067771eb79 100644 --- a/Userland/Libraries/LibWeb/FileAPI/File.idl +++ b/Userland/Libraries/LibWeb/FileAPI/File.idl @@ -1,5 +1,6 @@ #import +// https://w3c.github.io/FileAPI/#file-section [Exposed=(Window,Worker), Serializable] interface File : Blob { constructor(sequence fileBits, USVString fileName, optional FilePropertyBag options = {}); diff --git a/Userland/Libraries/LibWeb/FileAPI/FileList.idl b/Userland/Libraries/LibWeb/FileAPI/FileList.idl index 3e13c79479..71ec4052e0 100644 --- a/Userland/Libraries/LibWeb/FileAPI/FileList.idl +++ b/Userland/Libraries/LibWeb/FileAPI/FileList.idl @@ -1,5 +1,6 @@ +// https://w3c.github.io/FileAPI/#filelist-section [Exposed=(Window,Worker), Serializable] interface FileList { - getter File? item(unsigned long index); - readonly attribute unsigned long length; + getter File? item(unsigned long index); + readonly attribute unsigned long length; }; diff --git a/Userland/Libraries/LibWeb/HTML/Canvas/CanvasCompositing.idl b/Userland/Libraries/LibWeb/HTML/Canvas/CanvasCompositing.idl index db080c6309..413d3c8d56 100644 --- a/Userland/Libraries/LibWeb/HTML/Canvas/CanvasCompositing.idl +++ b/Userland/Libraries/LibWeb/HTML/Canvas/CanvasCompositing.idl @@ -1,6 +1,6 @@ // https://html.spec.whatwg.org/multipage/canvas.html#canvascompositing interface mixin CanvasCompositing { - // compositing - attribute unrestricted double globalAlpha; // (default 1.0) -// FIXME: attribute DOMString globalCompositeOperation; // (default "source-over") + // compositing + attribute unrestricted double globalAlpha; // (default 1.0) + // FIXME: attribute DOMString globalCompositeOperation; // (default "source-over") }; diff --git a/Userland/Libraries/LibWeb/HTML/CanvasPattern.idl b/Userland/Libraries/LibWeb/HTML/CanvasPattern.idl index 046c235e5b..d0a7573b49 100644 --- a/Userland/Libraries/LibWeb/HTML/CanvasPattern.idl +++ b/Userland/Libraries/LibWeb/HTML/CanvasPattern.idl @@ -1,5 +1,5 @@ [Exposed=(Window,Worker)] interface CanvasPattern { - // opaque object - // FIXME: undefined setTransform(optional DOMMatrix2DInit transform = {}); + // opaque object + // FIXME: undefined setTransform(optional DOMMatrix2DInit transform = {}); }; diff --git a/Userland/Libraries/LibWeb/HTML/NavigationCurrentEntryChangeEvent.idl b/Userland/Libraries/LibWeb/HTML/NavigationCurrentEntryChangeEvent.idl index 48f7f131f1..665c97ae4a 100644 --- a/Userland/Libraries/LibWeb/HTML/NavigationCurrentEntryChangeEvent.idl +++ b/Userland/Libraries/LibWeb/HTML/NavigationCurrentEntryChangeEvent.idl @@ -5,14 +5,14 @@ // https://html.spec.whatwg.org/multipage/nav-history-apis.html#the-navigationcurrententrychangeevent-interface [Exposed=Window] interface NavigationCurrentEntryChangeEvent : Event { - constructor(DOMString type, NavigationCurrentEntryChangeEventInit eventInitDict); + constructor(DOMString type, NavigationCurrentEntryChangeEventInit eventInitDict); - readonly attribute NavigationType? navigationType; - readonly attribute NavigationHistoryEntry from; + readonly attribute NavigationType? navigationType; + readonly attribute NavigationHistoryEntry from; }; dictionary NavigationCurrentEntryChangeEventInit : EventInit { - // FIXME: Set default value of null when IDL generator supports it - NavigationType? navigationType; - required NavigationHistoryEntry from; + // FIXME: Set default value of null when IDL generator supports it + NavigationType? navigationType; + required NavigationHistoryEntry from; }; diff --git a/Userland/Libraries/LibWeb/HTML/NavigatorLanguage.idl b/Userland/Libraries/LibWeb/HTML/NavigatorLanguage.idl index 76992219be..6f7b64db75 100644 --- a/Userland/Libraries/LibWeb/HTML/NavigatorLanguage.idl +++ b/Userland/Libraries/LibWeb/HTML/NavigatorLanguage.idl @@ -1,7 +1,7 @@ // https://html.spec.whatwg.org/multipage/system-state.html#navigatorlanguage interface mixin NavigatorLanguage { - readonly attribute DOMString language; - // FIXME: readonly attribute FrozenArray languages; - // This is supposed to be a FrozenArray that always returns the same object - readonly attribute sequence languages; + readonly attribute DOMString language; + // FIXME: readonly attribute FrozenArray languages; + // This is supposed to be a FrozenArray that always returns the same object + readonly attribute sequence languages; }; diff --git a/Userland/Libraries/LibWeb/HTML/TextMetrics.idl b/Userland/Libraries/LibWeb/HTML/TextMetrics.idl index fd7ac9d1d1..c8a5ea4bd1 100644 --- a/Userland/Libraries/LibWeb/HTML/TextMetrics.idl +++ b/Userland/Libraries/LibWeb/HTML/TextMetrics.idl @@ -1,19 +1,19 @@ // https://html.spec.whatwg.org/multipage/canvas.html#textmetrics [Exposed=Window] interface TextMetrics { - // x-direction - readonly attribute double width; // advance width - readonly attribute double actualBoundingBoxLeft; - readonly attribute double actualBoundingBoxRight; + // x-direction + readonly attribute double width; // advance width + readonly attribute double actualBoundingBoxLeft; + readonly attribute double actualBoundingBoxRight; - // y-direction - readonly attribute double fontBoundingBoxAscent; - readonly attribute double fontBoundingBoxDescent; - readonly attribute double actualBoundingBoxAscent; - readonly attribute double actualBoundingBoxDescent; - readonly attribute double emHeightAscent; - readonly attribute double emHeightDescent; - readonly attribute double hangingBaseline; - readonly attribute double alphabeticBaseline; - readonly attribute double ideographicBaseline; + // y-direction + readonly attribute double fontBoundingBoxAscent; + readonly attribute double fontBoundingBoxDescent; + readonly attribute double actualBoundingBoxAscent; + readonly attribute double actualBoundingBoxDescent; + readonly attribute double emHeightAscent; + readonly attribute double emHeightDescent; + readonly attribute double hangingBaseline; + readonly attribute double alphabeticBaseline; + readonly attribute double ideographicBaseline; }; diff --git a/Userland/Libraries/LibWeb/IntersectionObserver/IntersectionObserver.idl b/Userland/Libraries/LibWeb/IntersectionObserver/IntersectionObserver.idl index 90c0ed6ee5..66d5db6af3 100644 --- a/Userland/Libraries/LibWeb/IntersectionObserver/IntersectionObserver.idl +++ b/Userland/Libraries/LibWeb/IntersectionObserver/IntersectionObserver.idl @@ -3,8 +3,10 @@ #import #import +// https://w3c.github.io/IntersectionObserver/#intersection-observer-callback callback IntersectionObserverCallback = undefined (sequence entries, IntersectionObserver observer); +// https://w3c.github.io/IntersectionObserver/#intersection-observer-interface [Exposed=(Window)] interface IntersectionObserver { constructor(IntersectionObserverCallback callback, optional IntersectionObserverInit options = {}); @@ -18,8 +20,10 @@ interface IntersectionObserver { sequence takeRecords(); }; +// https://w3c.github.io/IntersectionObserver/#intersection-observer-init dictionary IntersectionObserverInit { (Element or Document)? root = null; DOMString rootMargin = "0px"; + // FIXME: DOMString scrollMargin = "0px"; (double or sequence) threshold = 0; }; diff --git a/Userland/Libraries/LibWeb/NavigationTiming/PerformanceTiming.idl b/Userland/Libraries/LibWeb/NavigationTiming/PerformanceTiming.idl index 8fd6aee40f..e14b329e54 100644 --- a/Userland/Libraries/LibWeb/NavigationTiming/PerformanceTiming.idl +++ b/Userland/Libraries/LibWeb/NavigationTiming/PerformanceTiming.idl @@ -24,5 +24,6 @@ interface PerformanceTiming { readonly attribute unsigned long long domComplete; readonly attribute unsigned long long loadEventStart; readonly attribute unsigned long long loadEventEnd; + [Default] object toJSON(); }; diff --git a/Userland/Libraries/LibWeb/ResizeObserver/ResizeObserver.idl b/Userland/Libraries/LibWeb/ResizeObserver/ResizeObserver.idl index 9cfdbf2f55..38079d9d49 100644 --- a/Userland/Libraries/LibWeb/ResizeObserver/ResizeObserver.idl +++ b/Userland/Libraries/LibWeb/ResizeObserver/ResizeObserver.idl @@ -1,5 +1,6 @@ #import +// https://drafts.csswg.org/resize-observer/#resize-observer-interface [Exposed=(Window)] interface ResizeObserver { @@ -10,8 +11,6 @@ interface ResizeObserver { }; -callback ResizeObserverCallback = void (sequence entries, ResizeObserver observer); - enum ResizeObserverBoxOptions { "border-box", "content-box", "device-pixel-content-box" }; @@ -19,3 +18,6 @@ enum ResizeObserverBoxOptions { dictionary ResizeObserverOptions { ResizeObserverBoxOptions box = "content-box"; }; + +// https://drafts.csswg.org/resize-observer/#resize-observer-callback +callback ResizeObserverCallback = void (sequence entries, ResizeObserver observer); diff --git a/Userland/Libraries/LibWeb/SVG/SVGGradientElement.idl b/Userland/Libraries/LibWeb/SVG/SVGGradientElement.idl index 007aa9cd69..ae221e51af 100644 --- a/Userland/Libraries/LibWeb/SVG/SVGGradientElement.idl +++ b/Userland/Libraries/LibWeb/SVG/SVGGradientElement.idl @@ -3,15 +3,16 @@ [Exposed=Window] interface SVGGradientElement : SVGElement { - // Spread Method Types - const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0; - const unsigned short SVG_SPREADMETHOD_PAD = 1; - const unsigned short SVG_SPREADMETHOD_REFLECT = 2; - const unsigned short SVG_SPREADMETHOD_REPEAT = 3; + // Spread Method Types + const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0; + const unsigned short SVG_SPREADMETHOD_PAD = 1; + const unsigned short SVG_SPREADMETHOD_REFLECT = 2; + const unsigned short SVG_SPREADMETHOD_REPEAT = 3; + + // FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration gradientUnits; + // FIXME: [SameObject] readonly attribute SVGAnimatedTransformList gradientTransform; + // FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration spreadMethod; - // FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration gradientUnits; - // FIXME: [SameObject] readonly attribute SVGAnimatedTransformList gradientTransform; - // FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration spreadMethod; }; // FIXME: SVGGradientElement includes SVGURIReference; diff --git a/Userland/Libraries/LibWeb/SVG/SVGTextContentElement.idl b/Userland/Libraries/LibWeb/SVG/SVGTextContentElement.idl index 186dccd1c6..fd00990866 100644 --- a/Userland/Libraries/LibWeb/SVG/SVGTextContentElement.idl +++ b/Userland/Libraries/LibWeb/SVG/SVGTextContentElement.idl @@ -4,21 +4,22 @@ [Exposed=Window] interface SVGTextContentElement : SVGGraphicsElement { - // lengthAdjust Types - const unsigned short LENGTHADJUST_UNKNOWN = 0; - const unsigned short LENGTHADJUST_SPACING = 1; - const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2; + // lengthAdjust Types + const unsigned short LENGTHADJUST_UNKNOWN = 0; + const unsigned short LENGTHADJUST_SPACING = 1; + const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2; - // FIXME: [SameObject] readonly attribute SVGAnimatedLength textLength; - // FIXME:[SameObject] readonly attribute SVGAnimatedEnumeration lengthAdjust; + // FIXME: [SameObject] readonly attribute SVGAnimatedLength textLength; + // FIXME:[SameObject] readonly attribute SVGAnimatedEnumeration lengthAdjust; + + long getNumberOfChars(); + // FIXME: float getComputedTextLength(); + // FIXME: float getSubStringLength(unsigned long charnum, unsigned long nchars); + // FIXME: DOMPoint getStartPositionOfChar(unsigned long charnum); + // FIXME: DOMPoint getEndPositionOfChar(unsigned long charnum); + // FIXME: DOMRect getExtentOfChar(unsigned long charnum); + // FIXME: float getRotationOfChar(unsigned long charnum); + // FIXME: long getCharNumAtPosition(optional DOMPointInit point = {}); + // FIXME: undefined selectSubString(unsigned long charnum, unsigned long nchars); - long getNumberOfChars(); - // FIXME: float getComputedTextLength(); - // FIXME: float getSubStringLength(unsigned long charnum, unsigned long nchars); - // FIXME: DOMPoint getStartPositionOfChar(unsigned long charnum); - // FIXME: DOMPoint getEndPositionOfChar(unsigned long charnum); - // FIXME: DOMRect getExtentOfChar(unsigned long charnum); - // FIXME: float getRotationOfChar(unsigned long charnum); - // FIXME: long getCharNumAtPosition(optional DOMPointInit point = {}); - // FIXME: undefined selectSubString(unsigned long charnum, unsigned long nchars); }; diff --git a/Userland/Libraries/LibWeb/SVG/SVGTextPositioningElement.idl b/Userland/Libraries/LibWeb/SVG/SVGTextPositioningElement.idl index f9ca5153a0..671f077f93 100644 --- a/Userland/Libraries/LibWeb/SVG/SVGTextPositioningElement.idl +++ b/Userland/Libraries/LibWeb/SVG/SVGTextPositioningElement.idl @@ -3,9 +3,9 @@ // https://svgwg.org/svg2-draft/text.html#InterfaceSVGTextPositioningElement [Exposed=Window] interface SVGTextPositioningElement : SVGTextContentElement { - // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList x; - // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList y; - // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList dx; - // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList dy; - // FIXME: [SameObject] readonly attribute SVGAnimatedNumberList rotate; + // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList x; + // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList y; + // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList dx; + // FIXME: [SameObject] readonly attribute SVGAnimatedLengthList dy; + // FIXME: [SameObject] readonly attribute SVGAnimatedNumberList rotate; }; diff --git a/Userland/Libraries/LibWeb/Selection/Selection.idl b/Userland/Libraries/LibWeb/Selection/Selection.idl index c783f029ce..a4089eae24 100644 --- a/Userland/Libraries/LibWeb/Selection/Selection.idl +++ b/Userland/Libraries/LibWeb/Selection/Selection.idl @@ -1,6 +1,7 @@ #import #import +// https://w3c.github.io/selection-api/#selection-interface [Exposed=Window] interface Selection { diff --git a/Userland/Libraries/LibWeb/Streams/ByteLengthQueuingStrategy.idl b/Userland/Libraries/LibWeb/Streams/ByteLengthQueuingStrategy.idl index 24864e6fc9..e0d9c348cc 100644 --- a/Userland/Libraries/LibWeb/Streams/ByteLengthQueuingStrategy.idl +++ b/Userland/Libraries/LibWeb/Streams/ByteLengthQueuingStrategy.idl @@ -7,6 +7,5 @@ interface ByteLengthQueuingStrategy { constructor(QueuingStrategyInit init); readonly attribute unrestricted double highWaterMark; - readonly attribute Function size; }; diff --git a/Userland/Libraries/LibWeb/Streams/CountQueuingStrategy.idl b/Userland/Libraries/LibWeb/Streams/CountQueuingStrategy.idl index da94810894..cd9ba06f39 100644 --- a/Userland/Libraries/LibWeb/Streams/CountQueuingStrategy.idl +++ b/Userland/Libraries/LibWeb/Streams/CountQueuingStrategy.idl @@ -7,6 +7,5 @@ interface CountQueuingStrategy { constructor(QueuingStrategyInit init); readonly attribute unrestricted double highWaterMark; - readonly attribute Function size; }; diff --git a/Userland/Libraries/LibWeb/Streams/ReadableByteStreamController.idl b/Userland/Libraries/LibWeb/Streams/ReadableByteStreamController.idl index 71def45329..006bb27363 100644 --- a/Userland/Libraries/LibWeb/Streams/ReadableByteStreamController.idl +++ b/Userland/Libraries/LibWeb/Streams/ReadableByteStreamController.idl @@ -1,5 +1,6 @@ #import +// https://streams.spec.whatwg.org/#rbs-controller-class-definition [Exposed=*] interface ReadableByteStreamController { readonly attribute ReadableStreamBYOBRequest? byobRequest; @@ -7,7 +8,5 @@ interface ReadableByteStreamController { undefined close(); undefined error(optional any e); - - // FIXME: Implement - // undefined enqueue(ArrayBufferView chunk); + // FIXME: undefined enqueue(ArrayBufferView chunk); }; diff --git a/Userland/Libraries/LibWeb/Streams/ReadableStream.idl b/Userland/Libraries/LibWeb/Streams/ReadableStream.idl index 027980c7a2..005ca11e0b 100644 --- a/Userland/Libraries/LibWeb/Streams/ReadableStream.idl +++ b/Userland/Libraries/LibWeb/Streams/ReadableStream.idl @@ -15,10 +15,17 @@ dictionary ReadableStreamGetReaderOptions { interface ReadableStream { constructor(optional object underlyingSource, optional QueuingStrategy strategy = {}); + // FIXME: static ReadableStream from(any asyncIterable); + readonly attribute boolean locked; Promise cancel(optional any reason); ReadableStreamReader getReader(optional ReadableStreamGetReaderOptions options = {}); + // FIXME: ReadableStream pipeThrough(ReadableWritablePair transform, optional StreamPipeOptions options = {}); + // FIXME: Promise pipeTo(WritableStream destination, optional StreamPipeOptions options = {}); + // FIXME: sequence tee(); + + // FIXME: async iterable(optional ReadableStreamIteratorOptions options = {}); }; typedef (ReadableStreamDefaultReader or ReadableStreamBYOBReader) ReadableStreamReader; diff --git a/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBReader.idl b/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBReader.idl index f2039ee1a4..3cba0e3422 100644 --- a/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBReader.idl +++ b/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBReader.idl @@ -6,8 +6,7 @@ interface ReadableStreamBYOBReader { constructor(ReadableStream stream); - // FIXME: Implement - // Promise read(ArrayBufferView view); + // FIXME: Promise read(ArrayBufferView view); undefined releaseLock(); }; ReadableStreamBYOBReader includes ReadableStreamGenericReader; diff --git a/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBRequest.idl b/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBRequest.idl index 916bdc6846..b08ed51cfd 100644 --- a/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBRequest.idl +++ b/Userland/Libraries/LibWeb/Streams/ReadableStreamBYOBRequest.idl @@ -1,9 +1,9 @@ +// https://streams.spec.whatwg.org/#readablestreambyobrequest [Exposed=*] interface ReadableStreamBYOBRequest { // FIXME: This should be an ArrayBufferView readonly attribute any? view; - // FIXME: Implement - // undefined respond([EnforceRange] unsigned long long bytesWritten); - // undefined respondWithNewView(ArrayBufferView view); + // FIXME: undefined respond([EnforceRange] unsigned long long bytesWritten); + // FIXME: undefined respondWithNewView(ArrayBufferView view); }; diff --git a/Userland/Libraries/LibWeb/Streams/WritableStream.idl b/Userland/Libraries/LibWeb/Streams/WritableStream.idl index f445e24cc8..236bd65003 100644 --- a/Userland/Libraries/LibWeb/Streams/WritableStream.idl +++ b/Userland/Libraries/LibWeb/Streams/WritableStream.idl @@ -1,6 +1,7 @@ #import #import +// https://streams.spec.whatwg.org/#writablestream [Exposed=*, Transferable] interface WritableStream { constructor(optional object underlyingSink, optional QueuingStrategy strategy = {}); diff --git a/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultController.idl b/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultController.idl index a2a93b04c1..f7c1d72646 100644 --- a/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultController.idl +++ b/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultController.idl @@ -1,5 +1,6 @@ #import +// https://streams.spec.whatwg.org/#writablestreamdefaultcontroller [Exposed=*] interface WritableStreamDefaultController { readonly attribute AbortSignal signal; diff --git a/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultWriter.idl b/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultWriter.idl index fd8a32e2f9..14477a6fcb 100644 --- a/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultWriter.idl +++ b/Userland/Libraries/LibWeb/Streams/WritableStreamDefaultWriter.idl @@ -1,5 +1,6 @@ #import +// https://streams.spec.whatwg.org/#writablestreamdefaultwriter [Exposed=*] interface WritableStreamDefaultWriter { constructor(WritableStream stream); diff --git a/Userland/Libraries/LibWeb/UIEvents/FocusEvent.idl b/Userland/Libraries/LibWeb/UIEvents/FocusEvent.idl index 1cba0af8fd..2483a7b1f6 100644 --- a/Userland/Libraries/LibWeb/UIEvents/FocusEvent.idl +++ b/Userland/Libraries/LibWeb/UIEvents/FocusEvent.idl @@ -1,5 +1,6 @@ #import +// https://www.w3.org/TR/uievents/#idl-focusevent [Exposed=Window] interface FocusEvent : UIEvent { @@ -8,6 +9,7 @@ interface FocusEvent : UIEvent { }; +// https://www.w3.org/TR/uievents/#idl-focuseventinit dictionary FocusEventInit : UIEventInit { EventTarget? relatedTarget = null; diff --git a/Userland/Libraries/LibWeb/UIEvents/UIEvent.idl b/Userland/Libraries/LibWeb/UIEvents/UIEvent.idl index d79f774fa8..98ce51afcc 100644 --- a/Userland/Libraries/LibWeb/UIEvents/UIEvent.idl +++ b/Userland/Libraries/LibWeb/UIEvents/UIEvent.idl @@ -7,12 +7,12 @@ interface UIEvent : Event { readonly attribute Window? view; readonly attribute long detail; - // NOTE: This is "deprecated, but supported for backwards-compatibility with widely-deployed implementations." + // Obsolete [ImplementedAs=init_ui_event] undefined initUIEvent(DOMString typeArg, optional boolean bubblesArg = false, optional boolean cancelableArg = false, optional Window? viewArg = null, optional long detailArg = 0); - readonly attribute unsigned long which; }; +// https://w3c.github.io/uievents/#idl-uieventinit dictionary UIEventInit : EventInit { Window? view = null; long detail = 0; diff --git a/Userland/Libraries/LibWeb/UIEvents/WheelEvent.idl b/Userland/Libraries/LibWeb/UIEvents/WheelEvent.idl index 51a633737b..36f60c7f65 100644 --- a/Userland/Libraries/LibWeb/UIEvents/WheelEvent.idl +++ b/Userland/Libraries/LibWeb/UIEvents/WheelEvent.idl @@ -14,6 +14,7 @@ interface WheelEvent : MouseEvent { readonly attribute unsigned long deltaMode; }; +// https://www.w3.org/TR/uievents/#idl-wheeleventinit dictionary WheelEventInit : MouseEventInit { double deltaX = 0; double deltaY = 0; diff --git a/Userland/Libraries/LibWeb/URL/URLSearchParams.idl b/Userland/Libraries/LibWeb/URL/URLSearchParams.idl index 6269743ad8..3fce797ebf 100644 --- a/Userland/Libraries/LibWeb/URL/URLSearchParams.idl +++ b/Userland/Libraries/LibWeb/URL/URLSearchParams.idl @@ -2,19 +2,20 @@ [Exposed=*] interface URLSearchParams { - constructor(optional (sequence> or record or USVString) init = ""); + constructor(optional (sequence> or record or USVString) init = ""); - readonly attribute unsigned long size; + readonly attribute unsigned long size; - undefined append(USVString name, USVString value); - undefined delete(USVString name); - USVString? get(USVString name); - sequence getAll(USVString name); - boolean has(USVString name); - undefined set(USVString name, USVString value); + undefined append(USVString name, USVString value); + undefined delete(USVString name); + USVString? get(USVString name); + sequence getAll(USVString name); + boolean has(USVString name); + undefined set(USVString name, USVString value); - undefined sort(); + undefined sort(); + + iterable; + stringifier; - iterable; - stringifier; }; diff --git a/Userland/Libraries/LibWeb/UserTiming/PerformanceMeasure.idl b/Userland/Libraries/LibWeb/UserTiming/PerformanceMeasure.idl index 18196d4bd4..9ec91bfc40 100644 --- a/Userland/Libraries/LibWeb/UserTiming/PerformanceMeasure.idl +++ b/Userland/Libraries/LibWeb/UserTiming/PerformanceMeasure.idl @@ -1,10 +1,12 @@ #import +// https://w3c.github.io/user-timing/#performancemeasure [Exposed=(Window,Worker)] interface PerformanceMeasure : PerformanceEntry { readonly attribute any detail; }; +// https://w3c.github.io/user-timing/#extensions-performance-interface dictionary PerformanceMeasureOptions { any detail; (DOMString or DOMHighResTimeStamp) start; diff --git a/Userland/Libraries/LibWeb/WebAudio/AudioContext.idl b/Userland/Libraries/LibWeb/WebAudio/AudioContext.idl index 9fad4595f8..e8d44a6549 100644 --- a/Userland/Libraries/LibWeb/WebAudio/AudioContext.idl +++ b/Userland/Libraries/LibWeb/WebAudio/AudioContext.idl @@ -20,12 +20,12 @@ interface AudioContext : BaseAudioContext { }; dictionary AudioContextOptions { - AudioContextLatencyCategory latencyHint = "interactive"; - float sampleRate; + AudioContextLatencyCategory latencyHint = "interactive"; + float sampleRate; }; dictionary AudioTimestamp { - double contextTime; - // FIXME: Should be DOMHighResTimeStamp, but DOMHighResTimeStamp doesn't get parsed as a double during codegen - double performanceTime; + double contextTime; + // FIXME: Should be DOMHighResTimeStamp, but DOMHighResTimeStamp doesn't get parsed as a double during codegen + double performanceTime; }; diff --git a/Userland/Libraries/LibWeb/WebSockets/WebSocket.idl b/Userland/Libraries/LibWeb/WebSockets/WebSocket.idl index 97ce64abad..ce5221935c 100644 --- a/Userland/Libraries/LibWeb/WebSockets/WebSocket.idl +++ b/Userland/Libraries/LibWeb/WebSockets/WebSocket.idl @@ -9,13 +9,15 @@ interface WebSocket : EventTarget { readonly attribute USVString url; + // ready state const unsigned short CONNECTING = 0; const unsigned short OPEN = 1; const unsigned short CLOSING = 2; const unsigned short CLOSED = 3; readonly attribute unsigned short readyState; - // readonly attribute unsigned long long bufferedAmount; + // FIXME: readonly attribute unsigned long long bufferedAmount; + // networking attribute EventHandler onopen; attribute EventHandler onerror; attribute EventHandler onclose; @@ -23,6 +25,7 @@ interface WebSocket : EventTarget { readonly attribute DOMString protocol; undefined close(optional unsigned short code, optional USVString reason); + // messaging attribute EventHandler onmessage; attribute DOMString binaryType; undefined send((BufferSource or Blob or USVString) data); diff --git a/Userland/Libraries/LibWeb/XHR/XMLHttpRequest.idl b/Userland/Libraries/LibWeb/XHR/XMLHttpRequest.idl index 3d91301e99..e6223ddb18 100644 --- a/Userland/Libraries/LibWeb/XHR/XMLHttpRequest.idl +++ b/Userland/Libraries/LibWeb/XHR/XMLHttpRequest.idl @@ -5,12 +5,12 @@ #import enum XMLHttpRequestResponseType { - "", - "arraybuffer", - "blob", - "document", - "json", - "text" + "", + "arraybuffer", + "blob", + "document", + "json", + "text" }; // https://xhr.spec.whatwg.org/#xmlhttprequest @@ -19,33 +19,37 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget { constructor(); + // event handler + attribute EventHandler onreadystatechange; + + // states const unsigned short UNSENT = 0; const unsigned short OPENED = 1; const unsigned short HEADERS_RECEIVED = 2; const unsigned short LOADING = 3; const unsigned short DONE = 4; - readonly attribute unsigned short readyState; - readonly attribute unsigned short status; - readonly attribute ByteString statusText; - readonly attribute DOMString responseText; - readonly attribute Document? responseXML; - readonly attribute any response; - attribute XMLHttpRequestResponseType responseType; - attribute unsigned long timeout; - attribute boolean withCredentials; - [SameObject] readonly attribute XMLHttpRequestUpload upload; + // request undefined open(DOMString method, DOMString url); undefined open(ByteString method, USVString url, boolean async, optional USVString? username = null, optional USVString? password = null); undefined setRequestHeader(DOMString name, DOMString value); + attribute unsigned long timeout; + attribute boolean withCredentials; + [SameObject] readonly attribute XMLHttpRequestUpload upload; undefined send(optional (Document or XMLHttpRequestBodyInit)? body = null); undefined abort(); + // response + // FIXME: readonly attribute USVString responseURL; + readonly attribute unsigned short status; + readonly attribute ByteString statusText; ByteString? getResponseHeader(ByteString name); ByteString getAllResponseHeaders(); undefined overrideMimeType(DOMString mime); - - attribute EventHandler onreadystatechange; + attribute XMLHttpRequestResponseType responseType; + readonly attribute any response; + readonly attribute DOMString responseText; + readonly attribute Document? responseXML; }; diff --git a/Userland/Libraries/LibWeb/XHR/XMLHttpRequestEventTarget.idl b/Userland/Libraries/LibWeb/XHR/XMLHttpRequestEventTarget.idl index d41fe85a7c..c43dee75b3 100644 --- a/Userland/Libraries/LibWeb/XHR/XMLHttpRequestEventTarget.idl +++ b/Userland/Libraries/LibWeb/XHR/XMLHttpRequestEventTarget.idl @@ -5,6 +5,7 @@ [Exposed=(Window,DedicatedWorker,SharedWorker)] interface XMLHttpRequestEventTarget : EventTarget { + // event handlers attribute EventHandler onloadstart; attribute EventHandler onprogress; attribute EventHandler onabort;