mirror of
https://github.com/servo/servo.git
synced 2025-09-13 16:38:20 +01:00
Move TransformStyle out of Mako files
This commit is contained in:
parent
579cef6a69
commit
1f8777bb0b
9 changed files with 63 additions and 13 deletions
|
@ -62,6 +62,7 @@ use values::computed::{NonNegativeLength, ToComputedValue, Percentage};
|
|||
use values::computed::font::{FontSize, SingleFontFamily};
|
||||
use values::computed::effects::{BoxShadow, Filter, SimpleShadow};
|
||||
use values::computed::outline::OutlineStyle;
|
||||
use values::generics::transform::TransformStyle;
|
||||
use computed_values::border_style;
|
||||
|
||||
pub mod style_structs {
|
||||
|
@ -3345,6 +3346,25 @@ fn static_assert() {
|
|||
self.copy_transition_property_from(other)
|
||||
}
|
||||
|
||||
// Hand-written because the Mako helpers transform `Preserve3d` into `PRESERVE3D`.
|
||||
pub fn set_transform_style(&mut self, v: TransformStyle) {
|
||||
self.gecko.mTransformStyle = match v {
|
||||
TransformStyle::Flat => structs::NS_STYLE_TRANSFORM_STYLE_FLAT as u8,
|
||||
TransformStyle::Preserve3d => structs::NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D as u8,
|
||||
};
|
||||
}
|
||||
|
||||
// Hand-written because the Mako helpers transform `Preserve3d` into `PRESERVE3D`.
|
||||
pub fn clone_transform_style(&self) -> TransformStyle {
|
||||
match self.gecko.mTransformStyle as u32 {
|
||||
structs::NS_STYLE_TRANSFORM_STYLE_FLAT => TransformStyle::Flat,
|
||||
structs::NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D => TransformStyle::Preserve3d,
|
||||
_ => panic!("illegal transform style"),
|
||||
}
|
||||
}
|
||||
|
||||
${impl_simple_copy('transform_style', 'mTransformStyle')}
|
||||
|
||||
${impl_transition_count('property', 'Property')}
|
||||
|
||||
pub fn animations_equals(&self, other: &Self) -> bool {
|
||||
|
|
|
@ -526,14 +526,16 @@ ${helpers.single_keyword("transform-box",
|
|||
gecko_inexhaustive="True",
|
||||
animation_value_type="discrete")}
|
||||
|
||||
// `auto` keyword is not supported in gecko yet.
|
||||
${helpers.single_keyword("transform-style",
|
||||
"auto flat preserve-3d" if product == "servo" else
|
||||
"flat preserve-3d",
|
||||
spec="https://drafts.csswg.org/css-transforms/#transform-style-property",
|
||||
extra_prefixes="moz webkit",
|
||||
flags="CREATES_STACKING_CONTEXT FIXPOS_CB",
|
||||
animation_value_type="discrete")}
|
||||
${helpers.predefined_type(
|
||||
"transform-style",
|
||||
"TransformStyle",
|
||||
"computed::TransformStyle::" + ("Auto" if product == "servo" else "Flat"),
|
||||
spec="https://drafts.csswg.org/css-transforms-2/#transform-style-property",
|
||||
needs_context=False,
|
||||
extra_prefixes="moz webkit",
|
||||
flags="CREATES_STACKING_CONTEXT FIXPOS_CB",
|
||||
animation_value_type="discrete",
|
||||
)}
|
||||
|
||||
${helpers.predefined_type("transform-origin",
|
||||
"TransformOrigin",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue