From a0d07699986a12fb1a93c4ec58622a44c2923045 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Tue, 6 Feb 2018 22:30:46 +0100 Subject: [PATCH] style: Move flex-basis out of gecko_size_type. --- components/style/properties/helpers.mako.rs | 6 ------ .../style/properties/longhand/position.mako.rs | 17 ++++++++++++----- components/style/values/specified/length.rs | 13 +++++++++++++ 3 files changed, 25 insertions(+), 11 deletions(-) diff --git a/components/style/properties/helpers.mako.rs b/components/style/properties/helpers.mako.rs index cfb7fbbfa45..5e90fc06394 100644 --- a/components/style/properties/helpers.mako.rs +++ b/components/style/properties/helpers.mako.rs @@ -930,12 +930,6 @@ use values::specified::length::LengthOrPercentageOrAuto; SpecifiedValue(MozLength::LengthOrPercentageOrAuto(LengthOrPercentageOrAuto::zero())) } - - /// Returns a value representing a `0%` length. - pub fn zero_percent() -> Self { - use values::specified::length::LengthOrPercentageOrAuto; - SpecifiedValue(MozLength::LengthOrPercentageOrAuto(LengthOrPercentageOrAuto::zero_percent())) - } } % endif diff --git a/components/style/properties/longhand/position.mako.rs b/components/style/properties/longhand/position.mako.rs index cfc54d2d00c..795aa7513e4 100644 --- a/components/style/properties/longhand/position.mako.rs +++ b/components/style/properties/longhand/position.mako.rs @@ -167,11 +167,18 @@ ${helpers.predefined_type("order", "Integer", "0", // and should be converted to just LengthOrPercentage. % if product == "gecko": // FIXME: Gecko doesn't support content value yet. - ${helpers.gecko_size_type("flex-basis", "MozLength", "auto()", - logical=False, - spec="https://drafts.csswg.org/css-flexbox/#flex-basis-property", - extra_prefixes="webkit", - animation_value_type="MozLength")} + // + // FIXME(emilio): I suspect this property shouldn't allow quirks, and this + // was just a mistake. + ${helpers.predefined_type( + "flex-basis", + "MozLength", + "computed::MozLength::auto()", + extra_prefixes="webkit", + animation_value_type="ComputedValue", + allow_quirks=True, + spec="https://drafts.csswg.org/css-flexbox/#flex-basis-property" + )} % else: // FIXME: This property should be animatable. ${helpers.predefined_type("flex-basis", diff --git a/components/style/values/specified/length.rs b/components/style/values/specified/length.rs index b1d7a19e2c5..1e669e5b8c8 100644 --- a/components/style/values/specified/length.rs +++ b/components/style/values/specified/length.rs @@ -933,6 +933,7 @@ impl LengthOrPercentageOrAuto { } /// Returns a value representing `0%`. + #[inline] pub fn zero_percent() -> Self { LengthOrPercentageOrAuto::Percentage(computed::Percentage::zero()) } @@ -1142,6 +1143,18 @@ impl MozLength { )?; Ok(MozLength::LengthOrPercentageOrAuto(length)) } + + /// Returns `auto`. + #[inline] + pub fn auto() -> Self { + MozLength::LengthOrPercentageOrAuto(LengthOrPercentageOrAuto::auto()) + } + + /// Returns `0%`. + #[inline] + pub fn zero_percent() -> Self { + MozLength::LengthOrPercentageOrAuto(LengthOrPercentageOrAuto::zero_percent()) + } } /// A value suitable for a `max-width` or `max-height` property.