aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/style/properties/shorthand/position.mako.rs55
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/css-flexbox-column-reverse.htm.ini3
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-nowrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-nowrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-wrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap-reverse.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-nowrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap-reverse.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap-reverse.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-wrap.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-auto.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-none.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-number.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand.htm.ini5
-rw-r--r--tests/wpt/metadata-css/css-flexbox-1_dev/html/percentage-heights-000.htm.ini3
21 files changed, 22 insertions, 129 deletions
diff --git a/components/style/properties/shorthand/position.mako.rs b/components/style/properties/shorthand/position.mako.rs
index ea8592c7347..4710afd121e 100644
--- a/components/style/properties/shorthand/position.mako.rs
+++ b/components/style/properties/shorthand/position.mako.rs
@@ -4,49 +4,47 @@
<%namespace name="helpers" file="/helpers.mako.rs" />
+// https://drafts.csswg.org/css-flexbox/#flex-flow-property
<%helpers:shorthand name="flex-flow" sub_properties="flex-direction flex-wrap"
experimental="True">
use properties::longhands::{flex_direction, flex_wrap};
let mut direction = None;
let mut wrap = None;
- let mut any = false;
loop {
if direction.is_none() {
if let Ok(value) = input.try(|input| flex_direction::parse(context, input)) {
direction = Some(value);
- any = true;
continue
}
}
if wrap.is_none() {
if let Ok(value) = input.try(|input| flex_wrap::parse(context, input)) {
wrap = Some(value);
- any = true;
continue
}
}
break
}
- if any {
- Ok(Longhands {
- flex_direction: direction,
- flex_wrap: wrap,
- })
- } else {
- Err(())
+ if direction.is_none() && wrap.is_none() {
+ return Err(())
}
+ Ok(Longhands {
+ flex_direction: direction,
+ flex_wrap: wrap,
+ })
</%helpers:shorthand>
+// https://drafts.csswg.org/css-flexbox/#flex-property
<%helpers:shorthand name="flex" sub_properties="flex-grow flex-shrink flex-basis"
experimental="True">
use app_units::Au;
use values::specified::{Number, Length, LengthOrPercentageOrAutoOrContent};
pub fn parse_flexibility(input: &mut Parser)
- -> Result<(Option<Number>, Option<Number>),()> {
- let grow = Some(try!(Number::parse_non_negative(input)));
+ -> Result<(Number, Option<Number>),()> {
+ let grow = try!(Number::parse_non_negative(input));
let shrink = input.try(Number::parse_non_negative).ok();
Ok((grow, shrink))
}
@@ -54,7 +52,6 @@
let mut grow = None;
let mut shrink = None;
let mut basis = None;
- let mut any = false;
if input.try(|input| input.expect_ident_matching("none")).is_ok() {
return Ok(Longhands {
@@ -66,40 +63,26 @@
loop {
if grow.is_none() {
if let Ok((flex_grow, flex_shrink)) = input.try(parse_flexibility) {
- grow = flex_grow;
+ grow = Some(flex_grow);
shrink = flex_shrink;
- any = true;
continue
}
}
if basis.is_none() {
if let Ok(value) = input.try(LengthOrPercentageOrAutoOrContent::parse) {
basis = Some(value);
- any = true;
continue
}
}
break
}
- if any {
- if grow == None {
- grow = Some(Number(1.0));
- }
- if shrink == None && basis == None {
- basis = Some(LengthOrPercentageOrAutoOrContent::Length(Length::Absolute(Au(0))));
- }
- if shrink == None {
- shrink = Some(Number(1.0));
- }
- if basis == None {
- basis = Some(LengthOrPercentageOrAutoOrContent::Auto);
- }
- Ok(Longhands {
- flex_grow: grow,
- flex_shrink: shrink,
- flex_basis: basis,
- })
- } else {
- Err(())
+
+ if grow.is_none() && basis.is_none() {
+ return Err(())
}
+ Ok(Longhands {
+ flex_grow: grow.or(Some(Number(1.0))),
+ flex_shrink: shrink.or(Some(Number(1.0))),
+ flex_basis: basis.or(Some(LengthOrPercentageOrAutoOrContent::Length(Length::Absolute(Au(0)))))
+ })
</%helpers:shorthand>
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/css-flexbox-column-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/css-flexbox-column-reverse.htm.ini
new file mode 100644
index 00000000000..0bb52b55f16
--- /dev/null
+++ b/tests/wpt/metadata-css/css-flexbox-1_dev/html/css-flexbox-column-reverse.htm.ini
@@ -0,0 +1,3 @@
+[css-flexbox-column-reverse.htm]
+ type: reftest
+ expected: FAIL
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-nowrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-nowrap.htm.ini
deleted file mode 100644
index 787de3b280d..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-nowrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-nowrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column nowrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-nowrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-nowrap.htm.ini
deleted file mode 100644
index c6d809585a5..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-nowrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-reverse-nowrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column-reverse nowrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-wrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-wrap.htm.ini
deleted file mode 100644
index ef9ed52428d..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse-wrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-reverse-wrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column-reverse wrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse.htm.ini
deleted file mode 100644
index f94aa2f8c92..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-reverse.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-reverse.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column-reverse]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap-reverse.htm.ini
deleted file mode 100644
index fb3675dd9a7..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap-reverse.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-wrap-reverse.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column wrap-reverse]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap.htm.ini
deleted file mode 100644
index 5f960af2a59..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column-wrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column-wrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column wrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column.htm.ini
deleted file mode 100644
index 020ea13daa0..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-column.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-column.htm]
- type: testharness
- [flexbox | computed style | flex-flow: column]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-nowrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-nowrap.htm.ini
deleted file mode 100644
index 0a754375423..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-nowrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-reverse-nowrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row-reverse nowrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap-reverse.htm.ini
deleted file mode 100644
index ff7b03597e2..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap-reverse.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-reverse-wrap-reverse.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row-reverse wrap-reverse]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap.htm.ini
deleted file mode 100644
index f6b63035604..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse-wrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-reverse-wrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row-reverse wrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse.htm.ini
deleted file mode 100644
index 7e5604f5976..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-reverse.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-reverse.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row-reverse]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap-reverse.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap-reverse.htm.ini
deleted file mode 100644
index 46527212625..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap-reverse.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-wrap-reverse.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row wrap-reverse]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap.htm.ini
deleted file mode 100644
index 1106ebae9b9..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-row-wrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-row-wrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: row wrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-wrap.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-wrap.htm.ini
deleted file mode 100644
index 167643c5189..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-flow-wrap.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-flow-wrap.htm]
- type: testharness
- [flexbox | computed style | flex-flow: wrap]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-auto.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-auto.htm.ini
deleted file mode 100644
index 115c9f622a3..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-auto.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-shorthand-auto.htm]
- type: testharness
- [flexbox | computed style | flex: auto]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-none.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-none.htm.ini
deleted file mode 100644
index 8c8e31ec0b0..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-none.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-shorthand-none.htm]
- type: testharness
- [flexbox | computed style | flex: auto]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-number.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-number.htm.ini
deleted file mode 100644
index 13b8a30d711..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand-number.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-shorthand-number.htm]
- type: testharness
- [flexbox | computed style | flex: number]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand.htm.ini
deleted file mode 100644
index 649c9094029..00000000000
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/flexbox_computedstyle_flex-shorthand.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[flexbox_computedstyle_flex-shorthand.htm]
- type: testharness
- [flexbox | computed style | flex: invalid]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-css/css-flexbox-1_dev/html/percentage-heights-000.htm.ini b/tests/wpt/metadata-css/css-flexbox-1_dev/html/percentage-heights-000.htm.ini
index 563ef0309dc..33ebe02cd5a 100644
--- a/tests/wpt/metadata-css/css-flexbox-1_dev/html/percentage-heights-000.htm.ini
+++ b/tests/wpt/metadata-css/css-flexbox-1_dev/html/percentage-heights-000.htm.ini
@@ -9,9 +9,6 @@
[.flexbox 3]
expected: FAIL
- [.flexbox 4]
- expected: FAIL
-
[.flexbox 5]
expected: FAIL