LibWeb: Return HTMLElement for valid custom element tag names

This commit is contained in:
Srikavin Ramkumar 2023-03-23 04:28:25 -04:00 committed by Tim Flynn
parent f2dd878fe7
commit 47a466865c
Notes: sideshowbarker 2024-07-17 04:32:07 +09:00

View file

@ -7,6 +7,7 @@
#include <LibWeb/DOM/Document.h>
#include <LibWeb/DOM/ElementFactory.h>
#include <LibWeb/HTML/CustomElements/CustomElementName.h>
#include <LibWeb/HTML/HTMLAnchorElement.h>
#include <LibWeb/HTML/HTMLAreaElement.h>
#include <LibWeb/HTML/HTMLAudioElement.h>
@ -291,8 +292,10 @@ WebIDL::ExceptionOr<JS::NonnullGCPtr<Element>> create_element(Document& document
if (lowercase_tag_name == SVG::TagNames::text)
return MUST_OR_THROW_OOM(realm.heap().allocate<SVG::SVGTextContentElement>(realm, document, move(qualified_name)));
// FIXME: If name is a valid custom element name, then return HTMLElement.
// If name is a valid custom element name, then return HTMLElement.
if (HTML::is_valid_custom_element_name(local_name)) {
return MUST_OR_THROW_OOM(realm.heap().allocate<HTML::HTMLElement>(realm, document, move(qualified_name)));
}
return MUST_OR_THROW_OOM(realm.heap().allocate<HTML::HTMLUnknownElement>(realm, document, move(qualified_name)));
}