diff --git a/Userland/Libraries/LibWeb/DOM/Node.h b/Userland/Libraries/LibWeb/DOM/Node.h index 5bd932328f..f1be385128 100644 --- a/Userland/Libraries/LibWeb/DOM/Node.h +++ b/Userland/Libraries/LibWeb/DOM/Node.h @@ -103,6 +103,7 @@ public: virtual bool is_html_table_cell_element() const { return false; } virtual bool is_html_br_element() const { return false; } virtual bool is_html_button_element() const { return false; } + virtual bool is_html_slot_element() const { return false; } virtual bool is_navigable_container() const { return false; } WebIDL::ExceptionOr> pre_insert(JS::NonnullGCPtr, JS::GCPtr); diff --git a/Userland/Libraries/LibWeb/HTML/HTMLSlotElement.h b/Userland/Libraries/LibWeb/HTML/HTMLSlotElement.h index cef72057ff..d468c86a67 100644 --- a/Userland/Libraries/LibWeb/HTML/HTMLSlotElement.h +++ b/Userland/Libraries/LibWeb/HTML/HTMLSlotElement.h @@ -39,6 +39,8 @@ public: private: HTMLSlotElement(DOM::Document&, DOM::QualifiedName); + virtual bool is_html_slot_element() const override { return true; } + virtual void initialize(JS::Realm&) override; virtual void visit_edges(JS::Cell::Visitor&) override; @@ -47,3 +49,10 @@ private: }; } + +namespace Web::DOM { + +template<> +inline bool Node::fast_is() const { return is_html_slot_element(); } + +}