1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-16 15:44:57 +00:00

LibHTML: Add Node::first_ancestor_of_type<T>()

Here's another helper for finding the first ancestor of a Node of a
specific type.
This commit is contained in:
Andreas Kling 2019-10-06 21:07:36 +02:00
parent 03725c6135
commit a239ef34d5
2 changed files with 15 additions and 6 deletions

View file

@ -56,16 +56,12 @@ RefPtr<LayoutNode> Node::create_layout_tree(const StyleResolver& resolver, const
const HTMLAnchorElement* Node::enclosing_link_element() const
{
if (is<HTMLAnchorElement>(*this))
return static_cast<const HTMLAnchorElement*>(this);
return parent() ? parent()->enclosing_link_element() : nullptr;
return first_ancestor_of_type<HTMLAnchorElement>();
}
const HTMLElement* Node::enclosing_html_element() const
{
if (is_html_element())
return static_cast<const HTMLElement*>(this);
return parent() ? parent()->enclosing_html_element() : nullptr;
return first_ancestor_of_type<HTMLElement>();
}
String Node::text_content() const