From 7d45aad9b45d4a054a7f2526e7521db57b8a470d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Sun, 16 Apr 2017 08:16:24 +0200 Subject: [PATCH] Bug 1355343: Move node restyle bits to Element, and add bits for snapshot handling. r=bholley MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MozReview-Commit-ID: 6OrUKX5RcBq Signed-off-by: Emilio Cobos Álvarez --- components/style/build_gecko.rs | 1 + components/style/gecko/wrapper.rs | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/components/style/build_gecko.rs b/components/style/build_gecko.rs index 2db39701c5e..9b5b1273327 100644 --- a/components/style/build_gecko.rs +++ b/components/style/build_gecko.rs @@ -329,6 +329,7 @@ mod bindings { "NS_AUTHOR_SPECIFIED_.*", "NS_THEME_.*", "NODE_.*", + "ELEMENT_.*", "NS_FONT_.*", "NS_STYLE_.*", "NS_MATHML_.*", diff --git a/components/style/gecko/wrapper.rs b/components/style/gecko/wrapper.rs index 66ac6797b97..17ee344bbbe 100644 --- a/components/style/gecko/wrapper.rs +++ b/components/style/gecko/wrapper.rs @@ -47,9 +47,11 @@ use gecko_bindings::bindings::Gecko_UpdateAnimations; use gecko_bindings::structs; use gecko_bindings::structs::{RawGeckoElement, RawGeckoNode}; use gecko_bindings::structs::{nsIAtom, nsIContent, nsStyleContext}; +use gecko_bindings::structs::ELEMENT_HANDLED_SNAPSHOT; +use gecko_bindings::structs::ELEMENT_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO; +use gecko_bindings::structs::ELEMENT_HAS_DIRTY_DESCENDANTS_FOR_SERVO; +use gecko_bindings::structs::ELEMENT_HAS_SNAPSHOT; use gecko_bindings::structs::EffectCompositor_CascadeLevel as CascadeLevel; -use gecko_bindings::structs::NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO; -use gecko_bindings::structs::NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO; use gecko_bindings::structs::NODE_IS_IN_NATIVE_ANONYMOUS_SUBTREE; use gecko_bindings::structs::NODE_IS_NATIVE_ANONYMOUS; use gecko_bindings::sugar::ownership::HasArcFFI; @@ -590,13 +592,13 @@ impl<'le> TElement for GeckoElement<'le> { } fn has_dirty_descendants(&self) -> bool { - self.flags() & (NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) != 0 + self.flags() & (ELEMENT_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) != 0 } unsafe fn set_dirty_descendants(&self) { debug_assert!(self.get_data().is_some()); debug!("Setting dirty descendants: {:?}", self); - self.set_flags(NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) + self.set_flags(ELEMENT_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) } unsafe fn note_descendants>(&self) { @@ -617,19 +619,19 @@ impl<'le> TElement for GeckoElement<'le> { } unsafe fn unset_dirty_descendants(&self) { - self.unset_flags(NODE_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) + self.unset_flags(ELEMENT_HAS_DIRTY_DESCENDANTS_FOR_SERVO as u32) } fn has_animation_only_dirty_descendants(&self) -> bool { - self.flags() & (NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) != 0 + self.flags() & (ELEMENT_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) != 0 } unsafe fn set_animation_only_dirty_descendants(&self) { - self.set_flags(NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) + self.set_flags(ELEMENT_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) } unsafe fn unset_animation_only_dirty_descendants(&self) { - self.unset_flags(NODE_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) + self.unset_flags(ELEMENT_HAS_ANIMATION_ONLY_DIRTY_DESCENDANTS_FOR_SERVO as u32) } fn is_native_anonymous(&self) -> bool {