diff options
author | Josh Matthews <josh@joshmatthews.net> | 2020-05-06 00:51:59 -0400 |
---|---|---|
committer | Josh Matthews <josh@joshmatthews.net> | 2020-07-27 20:06:53 -0400 |
commit | d8b4dab4e38c2928f034248e158e8bf9b5ad60d6 (patch) | |
tree | 59f48ba368a55b7c37f147d9334ba525e7d2cb1e | |
parent | c7bdb1bcc0cd4985277579b7585d1abbbe489287 (diff) | |
download | servo-d8b4dab4e38c2928f034248e158e8bf9b5ad60d6.tar.gz servo-d8b4dab4e38c2928f034248e158e8bf9b5ad60d6.zip |
Implement basic white-space: pre support for layout 2020.
55 files changed, 167 insertions, 113 deletions
diff --git a/components/layout_2020/flow/construct.rs b/components/layout_2020/flow/construct.rs index 00bcfdd2586..73aa0c151b5 100644 --- a/components/layout_2020/flow/construct.rs +++ b/components/layout_2020/flow/construct.rs @@ -20,6 +20,7 @@ use rayon_croissant::ParallelIteratorExt; use servo_arc::Arc; use std::borrow::Cow; use std::convert::{TryFrom, TryInto}; +use style::computed_values::white_space::T as WhiteSpace; use style::properties::longhands::list_style_position::computed_value::T as ListStylePosition; use style::properties::ComputedValues; use style::selector_parser::PseudoElement; @@ -293,7 +294,8 @@ where } fn handle_text(&mut self, info: &NodeAndStyleInfo<Node>, input: Cow<'dom, str>) { - let (leading_whitespace, mut input) = self.handle_leading_whitespace(&input); + let white_space = info.style.get_inherited_text().white_space; + let (leading_whitespace, mut input) = self.handle_leading_whitespace(&input, white_space); if leading_whitespace || !input.is_empty() { // This text node should be pushed either to the next ongoing // inline level box with the parent style of that inline level box @@ -323,20 +325,37 @@ where if leading_whitespace { output.push(' ') } - loop { - if let Some(i) = input.bytes().position(|b| b.is_ascii_whitespace()) { - let (non_whitespace, rest) = input.split_at(i); - output.push_str(non_whitespace); - output.push(' '); - if let Some(i) = rest.bytes().position(|b| !b.is_ascii_whitespace()) { - input = &rest[i..]; + + match ( + white_space.preserve_spaces(), + white_space.preserve_newlines(), + ) { + (true, true) => { + output.push_str(input); + }, + + (true, false) => unreachable!(), + + (false, preserve_newlines) => loop { + if let Some(i) = input.bytes().position(|b| { + b.is_ascii_whitespace() && (!preserve_newlines || b != b'\n') + }) { + let (non_whitespace, rest) = input.split_at(i); + output.push_str(non_whitespace); + output.push(' '); + + if let Some(i) = rest.bytes().position(|b| { + !b.is_ascii_whitespace() || (preserve_newlines && b == b'\n') + }) { + input = &rest[i..]; + } else { + break; + } } else { + output.push_str(input); break; } - } else { - output.push_str(input); - break; - } + }, } } @@ -359,10 +378,14 @@ where /// /// * Whether this text run has preserved (non-collapsible) leading whitespace /// * The contents starting at the first non-whitespace character (or the empty string) - fn handle_leading_whitespace<'text>(&mut self, text: &'text str) -> (bool, &'text str) { + fn handle_leading_whitespace<'text>( + &mut self, + text: &'text str, + white_space: WhiteSpace, + ) -> (bool, &'text str) { // FIXME: this is only an approximation of // https://drafts.csswg.org/css2/text.html#white-space-model - if !text.starts_with(|c: char| c.is_ascii_whitespace()) { + if !text.starts_with(|c: char| c.is_ascii_whitespace()) || white_space.preserve_spaces() { return (false, text); } diff --git a/components/layout_2020/flow/inline.rs b/components/layout_2020/flow/inline.rs index f0d0f51ba50..d0b91aef506 100644 --- a/components/layout_2020/flow/inline.rs +++ b/components/layout_2020/flow/inline.rs @@ -756,13 +756,15 @@ impl TextRun { let mut glyphs = vec![]; let mut advance_width = Length::zero(); let mut last_break_opportunity = None; + let mut force_line_break = false; loop { let next = runs.next(); - if next - .as_ref() - .map_or(true, |run| run.glyph_store.is_whitespace()) - { - if advance_width > ifc.containing_block.inline_size - ifc.inline_position { + if next.as_ref().map_or(true, |run| { + run.glyph_store.is_whitespace() || force_line_break + }) { + if advance_width > ifc.containing_block.inline_size - ifc.inline_position || + force_line_break + { if let Some((len, width, iter)) = last_break_opportunity.take() { glyphs.truncate(len); advance_width = width; @@ -774,6 +776,14 @@ impl TextRun { if let Some(run) = next { if run.glyph_store.is_whitespace() { last_break_opportunity = Some((glyphs.len(), advance_width, runs.clone())); + if self.text.as_bytes().get(run.range.end().to_usize() - 1) == Some(&b'\n') + { + force_line_break = self + .parent_style + .get_inherited_text() + .white_space + .preserve_newlines(); + } } glyphs.push(run.glyph_store.clone()); advance_width += Length::from(run.glyph_store.total_advance()); @@ -812,7 +822,7 @@ impl TextRun { glyphs, text_decoration_line: ifc.current_nesting_level.text_decoration_line, })); - if runs.as_slice().is_empty() { + if runs.as_slice().is_empty() && !force_line_break { break; } else { // New line diff --git a/components/style/properties/longhands/inherited_text.mako.rs b/components/style/properties/longhands/inherited_text.mako.rs index 41614a04d92..6587627a58f 100644 --- a/components/style/properties/longhands/inherited_text.mako.rs +++ b/components/style/properties/longhands/inherited_text.mako.rs @@ -186,7 +186,6 @@ ${helpers.predefined_type( name="white-space" values="normal pre nowrap pre-wrap pre-line" engines="gecko servo-2013 servo-2020", - servo_2020_pref="layout.2020.unimplemented", extra_gecko_values="break-spaces -moz-pre-space" gecko_enum_prefix="StyleWhiteSpace" needs_conversion="True" diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/abspos/hypothetical-inline-alone-on-second-line.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/abspos/hypothetical-inline-alone-on-second-line.html.ini deleted file mode 100644 index df17fc5f182..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/abspos/hypothetical-inline-alone-on-second-line.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[hypothetical-inline-alone-on-second-line.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-008.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-008.xht.ini deleted file mode 100644 index 09b26767921..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-008.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[color-applies-to-008.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-015.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-015.xht.ini deleted file mode 100644 index c5be6b4fcad..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/colors/color-applies-to-015.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[color-applies-to-015.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/css1/c562-white-sp-000.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/css1/c562-white-sp-000.xht.ini deleted file mode 100644 index f256b9fa665..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/css1/c562-white-sp-000.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[c562-white-sp-000.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats-clear/float-003.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats-clear/float-003.xht.ini deleted file mode 100644 index d7b0c2ca89d..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats-clear/float-003.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[float-003.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/float-no-content-beside-001.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/float-no-content-beside-001.html.ini new file mode 100644 index 00000000000..7b131324eca --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/float-no-content-beside-001.html.ini @@ -0,0 +1,2 @@ +[float-no-content-beside-001.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/floats-placement-vertical-004.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/floats-placement-vertical-004.xht.ini new file mode 100644 index 00000000000..6036454a24a --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/floats-placement-vertical-004.xht.ini @@ -0,0 +1,2 @@ +[floats-placement-vertical-004.xht] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini new file mode 100644 index 00000000000..4bfb0c2053a --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini @@ -0,0 +1,4 @@ +[hit-test-floats-004.html] + [Miss float below something else] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-171.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-171.xht.ini deleted file mode 100644 index 17841b6e37d..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-171.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[content-171.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-173.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-173.xht.ini new file mode 100644 index 00000000000..27d146b4f76 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-173.xht.ini @@ -0,0 +1,2 @@ +[content-173.xht] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-newline-001.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-newline-001.xht.ini deleted file mode 100644 index 898b224f106..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-newline-001.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[content-newline-001.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-white-space-002.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-white-space-002.xht.ini new file mode 100644 index 00000000000..d9895725434 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/generated-content/content-white-space-002.xht.ini @@ -0,0 +1,2 @@ +[content-white-space-002.xht] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/padding-percentage-inherit-001.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/padding-percentage-inherit-001.xht.ini deleted file mode 100644 index f3c8ca13fcc..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/margin-padding-clear/padding-percentage-inherit-001.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[padding-percentage-inherit-001.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-replaced-width-006.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-replaced-width-006.xht.ini deleted file mode 100644 index 6b28c0a7732..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-replaced-width-006.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[block-replaced-width-006.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-001.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-001.xht.ini deleted file mode 100644 index f90e509741a..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-001.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[inline-replaced-width-001.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-006.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-006.xht.ini deleted file mode 100644 index 3b1738d27e4..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inline-replaced-width-006.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[inline-replaced-width-006.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inlines-016.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inlines-016.xht.ini deleted file mode 100644 index 08323ae34d3..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/inlines-016.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[inlines-016.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/positioning/absolute-non-replaced-height-008.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/positioning/absolute-non-replaced-height-008.xht.ini deleted file mode 100644 index a8181f873e1..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/positioning/absolute-non-replaced-height-008.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[absolute-non-replaced-height-008.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/positioning/position-static-001.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/positioning/position-static-001.xht.ini deleted file mode 100644 index b8665fc1939..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/positioning/position-static-001.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[position-static-001.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-009.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-009.xht.ini new file mode 100644 index 00000000000..91d95f9df47 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-009.xht.ini @@ -0,0 +1,2 @@ +[table-anonymous-objects-009.xht] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-010.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-010.xht.ini new file mode 100644 index 00000000000..12c3a9c74b3 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/tables/table-anonymous-objects-010.xht.ini @@ -0,0 +1,2 @@ +[table-anonymous-objects-010.xht] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-004.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-004.xht.ini deleted file mode 100644 index d2813834d88..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-004.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-004.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-applies-to-003.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-applies-to-003.xht.ini deleted file mode 100644 index a577c292396..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-applies-to-003.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-applies-to-003.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-013.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-013.xht.ini deleted file mode 100644 index d4163fc0bd8..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-013.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-013.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-016.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-016.xht.ini deleted file mode 100644 index 8ce343d746f..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-016.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-016.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-017.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-017.xht.ini deleted file mode 100644 index df0a0b0c0a4..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-017.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-017.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-018.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-018.xht.ini deleted file mode 100644 index f6ed836f1da..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-018.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-018.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-046.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-046.xht.ini deleted file mode 100644 index a4fb2e4fe18..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-046.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-046.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-047.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-047.xht.ini deleted file mode 100644 index 8046ab670c7..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-047.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-047.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-052.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-052.xht.ini deleted file mode 100644 index f981ec7b5d5..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/text/white-space-processing-052.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white-space-processing-052.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/visuren/anonymous-boxes-001b.xht.ini b/tests/wpt/metadata-layout-2020/css/CSS2/visuren/anonymous-boxes-001b.xht.ini deleted file mode 100644 index 67b06807a43..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/visuren/anonymous-boxes-001b.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[anonymous-boxes-001b.xht] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-027.html.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-027.html.ini deleted file mode 100644 index 5c1f927e20e..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-027.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[background-size-027.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-028.html.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-028.html.ini deleted file mode 100644 index baa377e6a97..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-028.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[background-size-028.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-030.html.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-030.html.ini deleted file mode 100644 index 8f67471d49f..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-030.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[background-size-030.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-031.html.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-031.html.ini deleted file mode 100644 index 227740a1cbb..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/background-size-031.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[background-size-031.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-004.html.ini b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-004.html.ini new file mode 100644 index 00000000000..7df62ee8875 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-004.html.ini @@ -0,0 +1,2 @@ +[anonymous-flex-item-004.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-005.html.ini b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-005.html.ini new file mode 100644 index 00000000000..f5db1aa1610 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-005.html.ini @@ -0,0 +1,2 @@ +[anonymous-flex-item-005.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-006.html.ini b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-006.html.ini new file mode 100644 index 00000000000..5865ea15bc8 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-flexbox/anonymous-flex-item-006.html.ini @@ -0,0 +1,2 @@ +[anonymous-flex-item-006.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-subelements-001.html.ini b/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-subelements-001.html.ini deleted file mode 100644 index e1bbdb7fc9d..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-subelements-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[text-decoration-subelements-001.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/offsetTopLeft-border-box.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/offsetTopLeft-border-box.html.ini new file mode 100644 index 00000000000..3bd0a5266dd --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/offsetTopLeft-border-box.html.ini @@ -0,0 +1,85 @@ +[offsetTopLeft-border-box.html] + [container: 11] + expected: FAIL + + [container: 10] + expected: FAIL + + [container: 13] + expected: FAIL + + [container: 12] + expected: FAIL + + [container: 15] + expected: FAIL + + [container: 14] + expected: FAIL + + [container: 17] + expected: FAIL + + [container: 16] + expected: FAIL + + [container: 19] + expected: FAIL + + [container: 18] + expected: FAIL + + [container: 9] + expected: FAIL + + [container: 8] + expected: FAIL + + [container: 1] + expected: FAIL + + [container: 0] + expected: FAIL + + [container: 3] + expected: FAIL + + [container: 2] + expected: FAIL + + [container: 5] + expected: FAIL + + [container: 4] + expected: FAIL + + [container: 7] + expected: FAIL + + [container: 6] + expected: FAIL + + [container: 20] + expected: FAIL + + [container: 21] + expected: FAIL + + [container: 22] + expected: FAIL + + [container: 23] + expected: FAIL + + [container: 24] + expected: FAIL + + [container: 25] + expected: FAIL + + [container: 26] + expected: FAIL + + [container: 27] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini b/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini index 0f09476f884..21832fe8ef4 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini @@ -23,15 +23,9 @@ [page-break-before: always] expected: FAIL - [white-space: inherit] - expected: FAIL - [page-break-after: inherit] expected: FAIL - [white-space: nowrap] - expected: FAIL - [page-break-before: left] expected: FAIL @@ -218,9 +212,6 @@ [display: table-cell] expected: FAIL - [white-space: pre] - expected: FAIL - [text-indent: 5%] expected: FAIL @@ -263,7 +254,7 @@ [clear: both] expected: FAIL - [white-space: pre-wrap] + [list-style-image: url(http://localhost/)] expected: FAIL [outline-width: 0px] @@ -332,9 +323,6 @@ [vertical-align: 1px] expected: FAIL - [white-space: pre-line] - expected: FAIL - [display: table-column] expected: FAIL @@ -395,9 +383,6 @@ [float: none] expected: FAIL - [white-space: normal] - expected: FAIL - [list-style-type: lower-roman] expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/br.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/br.html.ini deleted file mode 100644 index d4cc92b6bf0..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/br.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[br.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/input_whitespace.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/input_whitespace.html.ini deleted file mode 100644 index d4d47c4946b..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/input_whitespace.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[input_whitespace.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/line_breaking_whitespace_collapse_a.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/line_breaking_whitespace_collapse_a.html.ini deleted file mode 100644 index b4de5d5d47d..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/line_breaking_whitespace_collapse_a.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[line_breaking_whitespace_collapse_a.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/many_brs_a.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/many_brs_a.html.ini deleted file mode 100644 index cc004c9dffe..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/many_brs_a.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[many_brs_a.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/white-space-pre-line.htm.ini b/tests/wpt/mozilla/meta-layout-2020/css/white-space-pre-line.htm.ini new file mode 100644 index 00000000000..b549416814c --- /dev/null +++ b/tests/wpt/mozilla/meta-layout-2020/css/white-space-pre-line.htm.ini @@ -0,0 +1,2 @@ +[white-space-pre-line.htm] + expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/white_space_intrinsic_sizes_a.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/white_space_intrinsic_sizes_a.html.ini deleted file mode 100644 index 1330b71867f..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/white_space_intrinsic_sizes_a.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[white_space_intrinsic_sizes_a.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/whitespace_pre.html.ini b/tests/wpt/mozilla/meta-layout-2020/css/whitespace_pre.html.ini deleted file mode 100644 index 891465ffedf..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/whitespace_pre.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[whitespace_pre.html] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-005.htm.ini b/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-005.htm.ini deleted file mode 100644 index 7f36a3f3fd4..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-005.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[word-break-keep-all-005.htm] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-006.htm.ini b/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-006.htm.ini deleted file mode 100644 index 65ad4524b55..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-006.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[word-break-keep-all-006.htm] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-007.htm.ini b/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-007.htm.ini deleted file mode 100644 index 48e6b6c94b5..00000000000 --- a/tests/wpt/mozilla/meta-layout-2020/css/word-break-keep-all-007.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[word-break-keep-all-007.htm] - expected: FAIL diff --git a/tests/wpt/mozilla/meta-layout-2020/mozilla/hit_test_multiple_sc.html.ini b/tests/wpt/mozilla/meta-layout-2020/mozilla/hit_test_multiple_sc.html.ini new file mode 100644 index 00000000000..8ed8088a59f --- /dev/null +++ b/tests/wpt/mozilla/meta-layout-2020/mozilla/hit_test_multiple_sc.html.ini @@ -0,0 +1,4 @@ +[hit_test_multiple_sc.html] + [Hit testing works for following stacking contexts] + expected: FAIL + |