mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Pass pending restyles instead of draining them from layout
This commit is contained in:
parent
400c7012b1
commit
60ca98b753
7 changed files with 26 additions and 42 deletions
|
@ -1450,17 +1450,19 @@ impl LayoutThread {
|
|||
guards.author.clone(),
|
||||
);
|
||||
|
||||
let restyles = document.drain_pending_restyles();
|
||||
let restyles = std::mem::take(&mut data.pending_restyles);
|
||||
debug!("Draining restyles: {}", restyles.len());
|
||||
|
||||
let mut map = SnapshotMap::new();
|
||||
let elements_with_snapshot: Vec<_> = restyles
|
||||
.iter()
|
||||
.filter(|r| r.1.snapshot.is_some())
|
||||
.map(|r| r.0)
|
||||
.map(|r| unsafe { ServoLayoutNode::new(&r.0).as_element().unwrap() })
|
||||
.collect();
|
||||
|
||||
for (el, restyle) in restyles {
|
||||
let el = unsafe { ServoLayoutNode::new(&el).as_element().unwrap() };
|
||||
|
||||
// Propagate the descendant bit up the ancestors. Do this before
|
||||
// the restyle calculation so that we can also do it for new
|
||||
// unstyled nodes, which the descendants bit helps us find.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue