mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 22:07:35 +00:00
LibWeb: Use the globals from HTML::AttributeNames in style resolution
Using these avoids the FlyString lookups, so we should basically always prefer them over string literal attribute names.
This commit is contained in:
parent
770372ad02
commit
7f22e2a3c4
4 changed files with 9 additions and 3 deletions
|
@ -33,6 +33,8 @@ namespace AttributeNames {
|
|||
FlyString id;
|
||||
FlyString class_;
|
||||
FlyString type;
|
||||
FlyString href;
|
||||
FlyString style;
|
||||
|
||||
void initialize()
|
||||
{
|
||||
|
@ -42,6 +44,8 @@ void initialize()
|
|||
id = "id";
|
||||
class_ = "class";
|
||||
type = "type";
|
||||
href = "href";
|
||||
style = "style";
|
||||
s_initialized = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -37,6 +37,8 @@ void initialize();
|
|||
extern FlyString id;
|
||||
extern FlyString class_;
|
||||
extern FlyString type;
|
||||
extern FlyString href;
|
||||
extern FlyString style;
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -63,7 +63,7 @@ Node::~Node()
|
|||
const HTMLAnchorElement* Node::enclosing_link_element() const
|
||||
{
|
||||
for (auto* node = this; node; node = node->parent()) {
|
||||
if (is<HTMLAnchorElement>(*node) && to<HTMLAnchorElement>(*node).has_attribute("href"))
|
||||
if (is<HTMLAnchorElement>(*node) && to<HTMLAnchorElement>(*node).has_attribute(HTML::AttributeNames::href))
|
||||
return to<HTMLAnchorElement>(node);
|
||||
}
|
||||
return nullptr;
|
||||
|
@ -127,7 +127,7 @@ bool Node::is_link() const
|
|||
auto* enclosing_link = enclosing_link_element();
|
||||
if (!enclosing_link)
|
||||
return false;
|
||||
return enclosing_link->has_attribute("href");
|
||||
return enclosing_link->has_attribute(HTML::AttributeNames::href);
|
||||
}
|
||||
|
||||
void Node::dispatch_event(NonnullRefPtr<Event> event)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue