1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 13:18:13 +00:00

LibHTML: Add a per-attribute callback for Elements to parse attributes

Elements now have a virtual parse_attribute(name, value) callback that
gets invoked for each one of its attributes.
This commit is contained in:
Andreas Kling 2019-10-06 10:09:55 +02:00
parent 306b9dfb51
commit 772718b8d8
2 changed files with 10 additions and 0 deletions

View file

@ -44,11 +44,16 @@ void Element::set_attribute(const String& name, const String& value)
attribute->set_value(value);
else
m_attributes.empend(name, value);
parse_attribute(name, value);
}
void Element::set_attributes(Vector<Attribute>&& attributes)
{
m_attributes = move(attributes);
for (auto& attribute : m_attributes)
parse_attribute(attribute.name(), attribute.value());
}
bool Element::has_class(const StringView& class_name) const
@ -80,3 +85,7 @@ RefPtr<LayoutNode> Element::create_layout_node(const StyleResolver& resolver, co
ASSERT_NOT_REACHED();
}
void Element::parse_attribute(const String&, const String&)
{
}