1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:07:34 +00:00

LibWeb: Add ol start and li value attributes support

This commit is contained in:
Bastiaan van der Plaat 2023-10-11 18:42:09 +02:00 committed by Andreas Kling
parent d2fbc15f5d
commit 1cdbfc2ff1
10 changed files with 189 additions and 16 deletions

View file

@ -223,6 +223,7 @@ namespace AttributeNames {
__ENUMERATE_HTML_ATTRIBUTE(srclang) \
__ENUMERATE_HTML_ATTRIBUTE(srcset) \
__ENUMERATE_HTML_ATTRIBUTE(standby) \
__ENUMERATE_HTML_ATTRIBUTE(start) \
__ENUMERATE_HTML_ATTRIBUTE(step) \
__ENUMERATE_HTML_ATTRIBUTE(style) \
__ENUMERATE_HTML_ATTRIBUTE(summary) \

View file

@ -20,6 +20,12 @@ public:
// https://www.w3.org/TR/html-aria/#el-li
virtual Optional<ARIA::Role> default_role() const override { return ARIA::Role::listitem; }
i32 value() { return get_attribute(AttributeNames::value).value_or("0"_string).to_number<i32>().value_or(0); }
void set_value(i32 value)
{
set_attribute(AttributeNames::value, MUST(String::number(value))).release_value_but_fixme_should_propagate_errors();
}
private:
HTMLLIElement(DOM::Document&, DOM::QualifiedName);

View file

@ -6,7 +6,7 @@ interface HTMLLIElement : HTMLElement {
[HTMLConstructor] constructor();
// FIXME: [CEReactions] attribute long value;
[CEReactions] attribute long value;
// Obsolete
[CEReactions, Reflect] attribute DOMString type;

View file

@ -20,6 +20,12 @@ public:
// https://www.w3.org/TR/html-aria/#el-ol
virtual Optional<ARIA::Role> default_role() const override { return ARIA::Role::list; }
i32 start() { return get_attribute(AttributeNames::start).value_or("1"_string).to_number<i32>().value_or(1); }
void set_start(i32 start)
{
set_attribute(AttributeNames::start, MUST(String::number(start))).release_value_but_fixme_should_propagate_errors();
}
private:
HTMLOListElement(DOM::Document&, DOM::QualifiedName);

View file

@ -7,7 +7,7 @@ interface HTMLOListElement : HTMLElement {
[HTMLConstructor] constructor();
[CEReactions, Reflect] attribute boolean reversed;
// FIXME: [CEReactions] attribute long start;
[CEReactions] attribute long start;
[CEReactions, Reflect] attribute DOMString type;
// Obsolete