diff --git a/components/style/context.rs b/components/style/context.rs index 675fff06cc75..7ae849d07285 100644 --- a/components/style/context.rs +++ b/components/style/context.rs @@ -5,7 +5,7 @@ //! The context within which style is calculated. #[cfg(feature = "servo")] use animation::Animation; -use animation::PropertyAnimation; +#[cfg(feature = "servo")] use animation::PropertyAnimation; use app_units::Au; use bloom::StyleBloom; use cache::LRUCache; @@ -293,6 +293,7 @@ pub struct CurrentElementInfo { is_initial_style: bool, /// A Vec of possibly expired animations. Used only by Servo. #[allow(dead_code)] + #[cfg(feature = "servo")] pub possibly_expired_animations: Vec, } @@ -668,6 +669,17 @@ impl ThreadLocalStyleContext { } } + #[cfg(feature = "gecko")] + /// Notes when the style system starts traversing an element. + pub fn begin_element(&mut self, element: E, data: &ElementData) { + debug_assert!(self.current_element_info.is_none()); + self.current_element_info = Some(CurrentElementInfo { + element: element.as_node().opaque(), + is_initial_style: !data.has_styles(), + }); + } + + #[cfg(feature = "servo")] /// Notes when the style system starts traversing an element. pub fn begin_element(&mut self, element: E, data: &ElementData) { debug_assert!(self.current_element_info.is_none()); diff --git a/components/style/lib.rs b/components/style/lib.rs index fcf48752530b..7216b9c51e1c 100644 --- a/components/style/lib.rs +++ b/components/style/lib.rs @@ -92,7 +92,7 @@ extern crate unicode_segmentation; #[macro_use] mod macros; -pub mod animation; +#[cfg(feature = "servo")] pub mod animation; pub mod applicable_declarations; #[allow(missing_docs)] // TODO. #[cfg(feature = "servo")] pub mod attr; diff --git a/components/style/properties/helpers/animated_properties.mako.rs b/components/style/properties/helpers/animated_properties.mako.rs index 8dbb8a268d4b..88dc2272f004 100644 --- a/components/style/properties/helpers/animated_properties.mako.rs +++ b/components/style/properties/helpers/animated_properties.mako.rs @@ -387,6 +387,7 @@ pub fn nscsspropertyid_is_transitionable(property: nsCSSPropertyID) -> bool { /// An animated property interpolation between two computed values for that /// property. +#[cfg(feature = "servo")] #[derive(Clone, Debug, PartialEq)] #[cfg_attr(feature = "servo", derive(HeapSizeOf))] pub enum AnimatedProperty { @@ -404,6 +405,7 @@ pub enum AnimatedProperty { % endfor } +#[cfg(feature = "servo")] impl AnimatedProperty { /// Get the name of this property. pub fn name(&self) -> &'static str {