mirror of
https://github.com/servo/servo.git
synced 2025-08-06 22:15:33 +01:00
Be consistent about pseudo-elements in cascade_style.
Fortunately the checks were done in such a way that no incorrect behavior is exposed. But worth doing it anyway. MozReview-Commit-ID: 8873FkMXXKo
This commit is contained in:
parent
b6b698dbb1
commit
2d66301e9c
1 changed files with 8 additions and 3 deletions
|
@ -145,7 +145,6 @@ where
|
||||||
relevant_link_found ||
|
relevant_link_found ||
|
||||||
parent_style.and_then(|s| s.get_visited_style()).is_some();
|
parent_style.and_then(|s| s.get_visited_style()).is_some();
|
||||||
|
|
||||||
let pseudo = self.element.implemented_pseudo_element();
|
|
||||||
if should_compute_visited_style {
|
if should_compute_visited_style {
|
||||||
visited_style = Some(self.cascade_style(
|
visited_style = Some(self.cascade_style(
|
||||||
visited_rules.as_ref().or(Some(&primary_results.rule_node)),
|
visited_rules.as_ref().or(Some(&primary_results.rule_node)),
|
||||||
|
@ -153,7 +152,7 @@ where
|
||||||
parent_style,
|
parent_style,
|
||||||
layout_parent_style,
|
layout_parent_style,
|
||||||
CascadeVisitedMode::Visited,
|
CascadeVisitedMode::Visited,
|
||||||
/* pseudo = */ pseudo.as_ref(),
|
/* pseudo = */ None,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
let style = self.cascade_style(
|
let style = self.cascade_style(
|
||||||
|
@ -162,7 +161,7 @@ where
|
||||||
parent_style,
|
parent_style,
|
||||||
layout_parent_style,
|
layout_parent_style,
|
||||||
CascadeVisitedMode::Unvisited,
|
CascadeVisitedMode::Unvisited,
|
||||||
/* pseudo = */ pseudo.as_ref(),
|
/* pseudo = */ None,
|
||||||
);
|
);
|
||||||
|
|
||||||
PrimaryStyle { style, }
|
PrimaryStyle { style, }
|
||||||
|
@ -485,6 +484,12 @@ where
|
||||||
cascade_visited: CascadeVisitedMode,
|
cascade_visited: CascadeVisitedMode,
|
||||||
pseudo: Option<&PseudoElement>,
|
pseudo: Option<&PseudoElement>,
|
||||||
) -> Arc<ComputedValues> {
|
) -> Arc<ComputedValues> {
|
||||||
|
debug_assert!(
|
||||||
|
self.element.implemented_pseudo_element().is_none() || pseudo.is_none(),
|
||||||
|
"Pseudo-elements can't have other pseudos!"
|
||||||
|
);
|
||||||
|
debug_assert!(pseudo.map_or(true, |p| p.is_eager()));
|
||||||
|
|
||||||
let mut cascade_flags = CascadeFlags::empty();
|
let mut cascade_flags = CascadeFlags::empty();
|
||||||
|
|
||||||
if self.element.skip_root_and_item_based_display_fixup() ||
|
if self.element.skip_root_and_item_based_display_fixup() ||
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue