aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTIN TUN AUNG <62133983+rayguo17@users.noreply.github.com>2025-02-03 16:27:55 +0800
committerGitHub <noreply@github.com>2025-02-03 08:27:55 +0000
commit2030b7affd69ed1e0b5aa90acbae097fbd626a5b (patch)
treea7906dcdc1c302da85d44d73d41e15769da9d14a
parent6a2e37183c1995aa7c4bc31dfd8e871f28dcbae7 (diff)
downloadservo-2030b7affd69ed1e0b5aa90acbae097fbd626a5b.tar.gz
servo-2030b7affd69ed1e0b5aa90acbae097fbd626a5b.zip
layout: align-content with default value normal should behave as strech in flex container (#35178)
Signed-off-by: rayguo17 <rayguo17@gmail.com>
-rw-r--r--components/layout_2020/flexbox/layout.rs11
-rw-r--r--tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini9
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini15
-rw-r--r--tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini3
-rw-r--r--tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini3
-rw-r--r--tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini2
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini3
-rw-r--r--tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini4
23 files changed, 8 insertions, 137 deletions
diff --git a/components/layout_2020/flexbox/layout.rs b/components/layout_2020/flexbox/layout.rs
index 53595acd818..6aa8adb3b69 100644
--- a/components/layout_2020/flexbox/layout.rs
+++ b/components/layout_2020/flexbox/layout.rs
@@ -784,12 +784,17 @@ impl FlexContainer {
// the resolution of https://github.com/w3c/csswg-drafts/issues/10154
let num_lines = initial_line_layouts.len();
let resolved_align_content: AlignFlags = {
+ // Computed value from the style system
let align_content_style = flex_context.config.align_content.0.primary();
-
- // Inital values from the style system
- let mut resolved_align_content = align_content_style.value();
let mut is_safe = align_content_style.flags() == AlignFlags::SAFE;
+ // From https://drafts.csswg.org/css-align/#distribution-flex
+ // > `normal` behaves as `stretch`.
+ let mut resolved_align_content = match align_content_style.value() {
+ AlignFlags::NORMAL => AlignFlags::STRETCH,
+ align_content => align_content,
+ };
+
// From https://drafts.csswg.org/css-flexbox/#algo-line-align:
// > Some alignments can only be fulfilled in certain situations or are
// > limited in how much space they can consume; for example, space-between
diff --git a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini b/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini
deleted file mode 100644
index a5fb3f0a0d3..00000000000
--- a/tests/wpt/meta/css/css-flexbox/abspos/position-absolute-002.html.ini
+++ /dev/null
@@ -1,9 +0,0 @@
-[position-absolute-002.html]
- [.flexbox 5]
- expected: FAIL
-
- [.flexbox 8]
- expected: FAIL
-
- [.flexbox 9]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini
deleted file mode 100644
index 3bdab975cfe..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001a.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-horiz-001a.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini
deleted file mode 100644
index 5521570e680..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-001b.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-horiz-001b.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini
deleted file mode 100644
index 9a187b56166..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-horiz-002.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-horiz-002.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini
deleted file mode 100644
index 007e3a4670f..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-vert-001a.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-vert-001a.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini
deleted file mode 100644
index 42fc5fef67a..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-vert-001b.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-vert-001b.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini
deleted file mode 100644
index 3090a6b25a7..00000000000
--- a/tests/wpt/meta/css/css-flexbox/align-content-vert-002.html.ini
+++ /dev/null
@@ -1,15 +0,0 @@
-[align-content-vert-002.html]
- [.flexbox div 4]
- expected: FAIL
-
- [.flexbox div 7]
- expected: FAIL
-
- [.flexbox div 6]
- expected: FAIL
-
- [.flexbox div 3]
- expected: FAIL
-
- [.flexbox div 8]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini b/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini
index 0a06bb106d9..c513efe3097 100644
--- a/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini
+++ b/tests/wpt/meta/css/css-flexbox/align-content-wrap-003.html.ini
@@ -1,7 +1,4 @@
[align-content-wrap-003.html]
- [.flexbox 1]
- expected: FAIL
-
[.flexbox 33]
expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini b/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini
deleted file mode 100644
index 3d86d2f26c5..00000000000
--- a/tests/wpt/meta/css/css-flexbox/columns-height-set-via-top-bottom.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[columns-height-set-via-top-bottom.html]
- [.flexbox 2]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini b/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini
deleted file mode 100644
index 821870fdc77..00000000000
--- a/tests/wpt/meta/css/css-flexbox/dynamic-change-simplified-layout.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[dynamic-change-simplified-layout.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini b/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini
deleted file mode 100644
index 9f811cea638..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-reverse-column-reverse.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[multi-line-wrap-reverse-column-reverse.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini b/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini
deleted file mode 100644
index 23593e222b2..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flex-lines/multi-line-wrap-with-column-reverse.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[multi-line-wrap-with-column-reverse.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini
deleted file mode 100644
index dab9d6e1cf9..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-align-self-stretch-vert-002.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-align-self-stretch-vert-002.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini
deleted file mode 100644
index 88b0e3f1aa9..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001a.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-break-request-horiz-001a.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini
deleted file mode 100644
index cfecd9e45e0..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-horiz-001b.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-break-request-horiz-001b.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini
deleted file mode 100644
index c93bf834730..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001a.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-break-request-vert-001a.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini
deleted file mode 100644
index 3e447e342d1..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-break-request-vert-001b.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-break-request-vert-001b.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini
deleted file mode 100644
index 83d134abded..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-001.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-flex-wrap-horiz-001.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini
deleted file mode 100644
index 836251d7611..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-horiz-002.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-flex-wrap-horiz-002.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini
deleted file mode 100644
index 945a8e0c072..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-flex-wrap-vert-001.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[flexbox-flex-wrap-vert-001.html]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini
deleted file mode 100644
index c0d0eaba014..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox-lines-must-be-stretched-by-default.html.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[flexbox-lines-must-be-stretched-by-default.html]
- [.flex-container 1]
- expected: FAIL
diff --git a/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini b/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini
deleted file mode 100644
index 48c81ebde76..00000000000
--- a/tests/wpt/meta/css/css-flexbox/flexbox_width-wrapping-column.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[flexbox_width-wrapping-column.html]
- [.flexbox 1]
- expected: FAIL
-