From 69c422f581b1f7cfb778e1b5b00613772d289e0c Mon Sep 17 00:00:00 2001 From: Ravi Shankar Date: Wed, 10 Aug 2016 14:09:52 +0530 Subject: [PATCH] Support 'word-spacing' for geckolib --- components/style/properties/gecko.mako.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/components/style/properties/gecko.mako.rs b/components/style/properties/gecko.mako.rs index 3037f78cd98..9340e4f7cf5 100644 --- a/components/style/properties/gecko.mako.rs +++ b/components/style/properties/gecko.mako.rs @@ -1177,7 +1177,7 @@ fn static_assert() { <%self:impl_trait style_struct_name="InheritedText" - skip_longhands="text-align line-height"> + skip_longhands="text-align line-height word-spacing"> <% text_align_keyword = Keyword("text-align", "start end left right center justify -moz-center -moz-left " + "-moz-right match-parent") %> @@ -1213,6 +1213,22 @@ fn static_assert() { <%call expr="impl_coord_copy('line_height', 'mLineHeight')"> + pub fn set_word_spacing(&mut self, v: longhands::word_spacing::computed_value::T) { + use values::computed::LengthOrPercentage::*; + + match v.0 { + Some(lop) => match lop { + Length(au) => self.gecko.mWordSpacing.set_value(CoordDataValue::Coord(au.0)), + Percentage(f) => self.gecko.mWordSpacing.set_value(CoordDataValue::Percent(f)), + Calc(l_p) => self.gecko.mWordSpacing.set_value(CoordDataValue::Calc(l_p.into())), + }, + // https://drafts.csswg.org/css-text-3/#valdef-word-spacing-normal + None => self.gecko.mWordSpacing.set_value(CoordDataValue::Coord(0)), + } + } + + <%call expr="impl_coord_copy('word_spacing', 'mWordSpacing')"> + <%self:impl_trait style_struct_name="Text"