LibWeb: StyleResolver: Keep track of specificity of matched selector

This way it gets easier to compare matches.
This commit is contained in:
Tobias Christiansen 2021-05-24 23:01:24 +02:00 committed by Linus Groh
parent c4588a2cde
commit bf9c5ffb3f
Notes: sideshowbarker 2024-07-18 17:16:25 +09:00
2 changed files with 2 additions and 1 deletions

View file

@ -74,7 +74,7 @@ Vector<MatchingRule> StyleResolver::collect_matching_rules(const DOM::Element& e
size_t selector_index = 0;
for (auto& selector : rule.selectors()) {
if (SelectorEngine::matches(selector, element)) {
matching_rules.append({ rule, style_sheet_index, rule_index, selector_index });
matching_rules.append({ rule, style_sheet_index, rule_index, selector_index, selector.specificity() });
break;
}
++selector_index;

View file

@ -18,6 +18,7 @@ struct MatchingRule {
size_t style_sheet_index { 0 };
size_t rule_index { 0 };
size_t selector_index { 0 };
u32 specificity { 0 };
};
class StyleResolver {