Process normal traversal for throttled animation flush as well.

MozReview-Commit-ID: BirD8BDMifp
This commit is contained in:
Hiroyuki Ikezoe 2017-08-11 12:54:35 -07:00 committed by Bobby Holley
parent faad7ffb45
commit c0de5ebd21
2 changed files with 5 additions and 7 deletions

View file

@ -34,6 +34,10 @@ bitflags! {
/// Allows the traversal to run in parallel if there are sufficient cores on
/// the machine.
const ParallelTraversal = 1 << 7,
/// Flush throttled animations. By default, we only update throttled animations
/// when we have other non-throttled work to do. With this flag, we
/// unconditionally tick and process them.
const FlushThrottledAnimations = 1 << 8,
}
}
@ -67,6 +71,7 @@ pub fn assert_traversal_flags_match() {
ServoTraversalFlags_ClearAnimationOnlyDirtyDescendants =>
ClearAnimationOnlyDirtyDescendants,
ServoTraversalFlags_ParallelTraversal => ParallelTraversal,
ServoTraversalFlags_FlushThrottledAnimations => FlushThrottledAnimations,
}
}

View file

@ -278,13 +278,6 @@ pub extern "C" fn Servo_TraverseSubtree(root: RawGeckoElementBorrowed,
}
}
if traversal_flags.for_animation_only() {
debug!("Servo_TraverseSubtree complete (animation-only, aodd={})",
element.has_animation_only_dirty_descendants());
return element.has_animation_only_dirty_descendants() ||
element.borrow_data().unwrap().restyle.is_restyle();
}
traverse_subtree(element,
raw_data,
traversal_flags,