ladybird/Userland/Libraries/LibWeb/HTML/HTMLElement.idl
2024-04-14 22:08:22 +02:00

73 lines
2.6 KiB
Plaintext

#import <CSS/ElementCSSInlineStyle.idl>
#import <HTML/DOMStringMap.idl>
#import <DOM/Element.idl>
#import <DOM/EventHandler.idl>
// https://html.spec.whatwg.org/multipage/semantics.html#htmlelement
[Exposed=Window]
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;
[Reflect, CEReactions] attribute boolean inert;
undefined click();
[Reflect=accesskey, CEReactions] attribute DOMString accessKey;
readonly attribute DOMString accessKeyLabel;
// FIXME: [CEReactions] attribute boolean draggable;
// FIXME: [CEReactions] attribute boolean spellcheck;
// FIXME: [CEReactions] attribute DOMString autocapitalize;
[LegacyNullToEmptyString, CEReactions] attribute DOMString innerText;
[LegacyNullToEmptyString, CEReactions] attribute DOMString outerText;
// FIXME: ElementInternals attachInternals();
// 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
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;
// https://html.spec.whatwg.org/#elementcontenteditable
interface mixin ElementContentEditable {
[CEReactions] attribute DOMString contentEditable;
// FIXME: [CEReactions] attribute DOMString enterKeyHint;
readonly attribute boolean isContentEditable;
// FIXME: [CEReactions] attribute DOMString inputMode;
};
// https://html.spec.whatwg.org/#htmlorsvgelement
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;