mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Preserve restyle damage if the element was not restyled during throttled animation flush.
This commit is contained in:
parent
316878b489
commit
40b0d525dd
1 changed files with 7 additions and 2 deletions
|
@ -2779,8 +2779,13 @@ pub extern "C" fn Servo_TakeChangeHint(element: RawGeckoElementBorrowed,
|
|||
|
||||
let damage = data.restyle.damage;
|
||||
if restyle_behavior == structs::TraversalRestyleBehavior::ForThrottledAnimationFlush {
|
||||
debug_assert!(data.restyle.is_restyle() || damage.is_empty(),
|
||||
"Restyle damage should be empty if the element was not restyled");
|
||||
if !*was_restyled {
|
||||
// Don't touch elements if the element was not restyled
|
||||
// in throttled animation flush.
|
||||
debug!("Skip post traversal for throttled animation flush {:?} restyle={:?}",
|
||||
element, data.restyle);
|
||||
return nsChangeHint(0);
|
||||
}
|
||||
// In the case where we call this function for post traversal for
|
||||
// flusing throttled animations (i.e. without normal restyle
|
||||
// traversal), we need to preserve restyle hints for normal restyle
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue