diff options
author | J. Ryan Stinnett <jryans@gmail.com> | 2017-06-13 12:51:37 -0500 |
---|---|---|
committer | J. Ryan Stinnett <jryans@gmail.com> | 2017-06-22 15:47:32 -0500 |
commit | 2b5c56e6a8d9115194579efe6c21b330f7c41ca0 (patch) | |
tree | 1621e24985a20d743ac67fa8fe2809a343aadc8b /components/style/animation.rs | |
parent | c3b2a2f4de23255960357693f195aa4561286cc1 (diff) | |
download | servo-2b5c56e6a8d9115194579efe6c21b330f7c41ca0.tar.gz servo-2b5c56e6a8d9115194579efe6c21b330f7c41ca0.zip |
Move match and cascade temporaries to CurrentElementInfo
Before this change, the `ComputedStyle` struct that is part of permanent style
data per element holds 2 `StrongRuleNode`s (unvisited and visited) and 2
`Arc<ComputedValues>` (unvisited and visited).
Both rule nodes and the visited values don't actually need to be here. This
patch moves these 3 to new temporary storage in `CascadeInputs` on
`CurrentElementInfo` during the match and cascade process. Rule nodes are
pushed down inside the `ComputedValues` for later access after the cascade.
(Visited values were already available there.)
The permanent style data per element now has just the `Arc<ComputedValues>` for
itself and eager pseudo-elements (plus the `RestyleHint`).
MozReview-Commit-ID: 3wq52ERMpdi
Diffstat (limited to 'components/style/animation.rs')
-rw-r--r-- | components/style/animation.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/components/style/animation.rs b/components/style/animation.rs index 50735801c2a..ae96078c38c 100644 --- a/components/style/animation.rs +++ b/components/style/animation.rs @@ -502,6 +502,7 @@ fn compute_style_for_animation_step(context: &SharedStyleContext, // as existing browsers don't appear to animate visited styles. let computed = properties::apply_declarations(context.stylist.device(), + previous_style.rules(), iter, previous_style, previous_style, |