Skip to content

Commit

Permalink
Implement parsing/serialization of column-rule-width, column-rule-col…
Browse files Browse the repository at this point in the history
…or and column-span
  • Loading branch information
canova committed Nov 21, 2016
1 parent a4e26d5 commit 61431b7
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 1 deletion.
5 changes: 4 additions & 1 deletion components/style/properties/gecko.mako.rs
Expand Up @@ -2244,7 +2244,7 @@ clip-path
</%self:impl_trait>

<%self:impl_trait style_struct_name="Column"
skip_longhands="column-width column-count">
skip_longhands="column-width column-count -moz-column-rule-width">

pub fn set_column_width(&mut self, v: longhands::column_width::computed_value::T) {
match v.0 {
Expand All @@ -2268,6 +2268,9 @@ clip-path
}

${impl_simple_copy('column_count', 'mColumnCount')}

<% impl_app_units("_moz_column_rule_width", "mColumnRuleWidth", need_clone=True,
round_to_pixels=True) %>
</%self:impl_trait>

<%self:impl_trait style_struct_name="Counters"
Expand Down
36 changes: 36 additions & 0 deletions components/style/properties/longhand/column.mako.rs
Expand Up @@ -252,3 +252,39 @@

${helpers.single_keyword("column-fill", "auto balance",
products="gecko", animatable=False)}

// https://drafts.csswg.org/css-multicol-1/#propdef-column-rule-width
<%helpers:longhand name="-moz-column-rule-width" products="gecko" animatable="True">
use app_units::Au;
use std::fmt;
use style_traits::ToCss;
use values::HasViewportPercentage;
use values::specified::BorderWidth;

pub mod computed_value {
use app_units::Au;
pub type T = Au;
}

pub type SpecifiedValue = BorderWidth;

#[inline]
pub fn get_initial_value() -> computed_value::T {
Au::from_px(3) // medium
}

pub fn parse(_context: &ParserContext, input: &mut Parser) -> Result<SpecifiedValue, ()> {
BorderWidth::parse(input)
}
</%helpers:longhand>

// https://drafts.csswg.org/css-multicol-1/#crc
${helpers.predefined_type("-moz-column-rule-color", "CSSColor",
"::cssparser::Color::CurrentColor",
products="gecko", gecko_ffi_name="mColumnRuleColor",
animatable=True, complex_color=True, need_clone=True)}

// It's not implemented in servo or gecko yet.
// https://drafts.csswg.org/css-multicol-1/#column-span
${helpers.single_keyword("column-span", "none all",
products="none", animatable=False)}

0 comments on commit 61431b7

Please sign in to comment.