mirror of
https://github.com/servo/servo.git
synced 2025-08-28 08:38:20 +01:00
Implement :visited handling for lazy pseudo-elements in stylo.
Part 2 of the fix for Gecko bug 1364242: https://bugzilla.mozilla.org/show_bug.cgi?id=1364242
This commit is contained in:
parent
351c7f7859
commit
52d1b59515
5 changed files with 134 additions and 47 deletions
|
@ -10,7 +10,7 @@ use selectors::Element;
|
|||
use std::env;
|
||||
use std::fmt::Write;
|
||||
use std::ptr;
|
||||
use style::context::{QuirksMode, SharedStyleContext, StyleContext};
|
||||
use style::context::{CascadeInputs, QuirksMode, SharedStyleContext, StyleContext};
|
||||
use style::context::ThreadLocalStyleContext;
|
||||
use style::data::{ElementData, ElementStyles, RestyleData};
|
||||
use style::dom::{AnimationOnlyDirtyDescendants, DirtyDescendants};
|
||||
|
@ -1550,13 +1550,13 @@ fn get_pseudo_style(
|
|||
inherited_styles.unwrap_or(styles.primary());
|
||||
let guards = StylesheetGuards::same(guard);
|
||||
let metrics = get_metrics_provider_for_product();
|
||||
let rule_node = match styles.pseudos.get(&pseudo) {
|
||||
Some(styles) => styles.rules.as_ref(),
|
||||
None => None,
|
||||
let inputs = match styles.pseudos.get(&pseudo) {
|
||||
Some(styles) => CascadeInputs::new_from_style(styles),
|
||||
None => return None,
|
||||
};
|
||||
doc_data.stylist
|
||||
.compute_pseudo_element_style_with_rulenode(
|
||||
rule_node,
|
||||
.compute_pseudo_element_style_with_inputs(
|
||||
&inputs,
|
||||
&guards,
|
||||
inherited_styles,
|
||||
&metrics)
|
||||
|
@ -1588,6 +1588,7 @@ fn get_pseudo_style(
|
|||
&pseudo,
|
||||
rule_inclusion,
|
||||
base,
|
||||
is_probe,
|
||||
&metrics)
|
||||
},
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue