LibWeb: Add layout objects for fieldset and legend

Add the boilerplate code for the layout objects that represent the
`<fieldset>` and `<legend>` elements. Using these, we can make progress
towards laying out these two elements per the spec at
https://html.spec.whatwg.org/multipage/rendering.html#the-fieldset-and-legend-elements.
This commit is contained in:
Kostya Farber 2024-11-05 08:07:13 +00:00 committed by Alexander Kalenik
parent b342758dbf
commit a820308a02
Notes: github-actions[bot] 2024-11-19 13:32:03 +00:00
12 changed files with 173 additions and 0 deletions

View file

@ -14,6 +14,7 @@
#include <LibWeb/HTML/HTMLOutputElement.h>
#include <LibWeb/HTML/HTMLSelectElement.h>
#include <LibWeb/HTML/HTMLTextAreaElement.h>
#include <LibWeb/Layout/FieldSetBox.h>
namespace Web::HTML {
@ -77,4 +78,14 @@ GC::Ptr<DOM::HTMLCollection> const& HTMLFieldSetElement::elements()
return m_elements;
}
Layout::FieldSetBox* HTMLFieldSetElement::layout_node()
{
return static_cast<Layout::FieldSetBox*>(Node::layout_node());
}
JS::GCPtr<Layout::Node> HTMLFieldSetElement::create_layout_node(CSS::StyleProperties style)
{
return heap().allocate<Layout::FieldSetBox>(document(), *this, style);
}
}