mirror of
https://github.com/servo/servo.git
synced 2025-06-23 16:44:33 +01:00
style: Only store applicable ::before / ::after pseudo styles during the traversal.
This commit is contained in:
parent
5a57a3ef4b
commit
ff700aba75
7 changed files with 136 additions and 28 deletions
|
@ -123,7 +123,7 @@ trait PrivateMatchMethods: TElement {
|
|||
primary_style: &Arc<ComputedValues>
|
||||
) -> Option<Arc<ComputedValues>> {
|
||||
use context::CascadeInputs;
|
||||
use style_resolver::StyleResolverForElement;
|
||||
use style_resolver::{PseudoElementResolution, StyleResolverForElement};
|
||||
use stylist::RuleInclusion;
|
||||
|
||||
let rule_node = primary_style.rules();
|
||||
|
@ -143,8 +143,9 @@ trait PrivateMatchMethods: TElement {
|
|||
visited_rules: primary_style.get_visited_style().and_then(|s| s.rules.clone()),
|
||||
};
|
||||
|
||||
// Actually `PseudoElementResolution` doesn't really matter.
|
||||
let style =
|
||||
StyleResolverForElement::new(*self, context, RuleInclusion::All)
|
||||
StyleResolverForElement::new(*self, context, RuleInclusion::All, PseudoElementResolution::IfApplicable)
|
||||
.cascade_style_and_visited_with_default_parents(inputs);
|
||||
|
||||
Some(style)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue