Title: [272302] trunk
- Revision
- 272302
- Author
- [email protected]
- Date
- 2021-02-03 00:42:02 -0800 (Wed, 03 Feb 2021)
Log Message
[css-grid] WPT test css/css-grid/grid-model/grid-box-sizing-001.html fails
https://bugs.webkit.org/show_bug.cgi?id=204578
Patch by Ziran Sun <[email protected]> on 2021-02-03
Reviewed by Javier Fernandez.
LayoutTests/imported/w3c:
All test cases in grid-box-sizing-001.html should pass now due to this change.
* web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001-expected.txt:
Source/WebCore:
For a positioned element that specified both top/bottom should be treated as though
it has a height explicitly specified. Check on this case is missing in
RenderGrid::layoutBlock. This change adds check on hasDefiniteLogicalHeight() and make
sure we have a specific value of logical-height for the positioned elment that has
both top/bottom specified.
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
Modified Paths
Diff
Modified: trunk/LayoutTests/imported/w3c/ChangeLog (272301 => 272302)
--- trunk/LayoutTests/imported/w3c/ChangeLog 2021-02-03 08:30:22 UTC (rev 272301)
+++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-02-03 08:42:02 UTC (rev 272302)
@@ -1,3 +1,14 @@
+2021-02-03 Ziran Sun <[email protected]>
+
+ [css-grid] WPT test css/css-grid/grid-model/grid-box-sizing-001.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=204578
+
+ Reviewed by Javier Fernandez.
+
+ All test cases in grid-box-sizing-001.html should pass now due to this change.
+
+ * web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001-expected.txt:
+
2021-02-02 Yusuke Suzuki <[email protected]>
Unreviewed, update expect files for wasm tests
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001-expected.txt (272301 => 272302)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001-expected.txt 2021-02-03 08:30:22 UTC (rev 272301)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001-expected.txt 2021-02-03 08:42:02 UTC (rev 272302)
@@ -3,88 +3,24 @@
PASS .grid 2
PASS .grid 3
PASS .grid 4
-FAIL .grid 5 assert_equals:
-<div class="grid wholeWidth" style="bottom: 0;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 6 assert_equals:
-<div class="grid wholeWidth" style="bottom: 0;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 7 assert_equals:
-<div class="grid wholeWidth" style="bottom: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 8 assert_equals:
-<div class="grid wholeWidth" style="bottom: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
+PASS .grid 5
+PASS .grid 6
+PASS .grid 7
+PASS .grid 8
PASS .grid 9
PASS .grid 10
PASS .grid 11
PASS .grid 12
-FAIL .grid 13 assert_equals:
-<div class="grid wholeHeight" style="width: 200px;" data-expected-width="246" data-expected-height="100">
- <div class="item" data-expected-width="200" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 14 assert_equals:
-<div class="grid wholeHeight" style="min-width: 200px;" data-expected-width="246" data-expected-height="100">
- <div class="item" data-expected-width="200" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 15 assert_equals:
-<div class="grid wholeHeight" style="width: 200px; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 16 assert_equals:
-<div class="grid wholeHeight" style="min-width: 200px; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 17 assert_equals:
-<div class="grid wholeHeight" style="right: 0;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 18 assert_equals:
-<div class="grid wholeHeight" style="right: 0;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 19 assert_equals:
-<div class="grid wholeHeight" style="right: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 20 assert_equals:
-<div class="grid wholeHeight" style="right: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 21 assert_equals:
-<div class="grid wholeHeight" style="width: 200px; right: 0;" data-expected-width="246" data-expected-height="100">
- <div class="item" data-expected-width="200" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 22 assert_equals:
-<div class="grid wholeHeight" style="min-width: 200px; right: 0;" data-expected-width="246" data-expected-height="100">
- <div class="item" data-expected-width="200" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 23 assert_equals:
-<div class="grid wholeHeight" style="width: 200px; right: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
-FAIL .grid 24 assert_equals:
-<div class="grid wholeHeight" style="min-width: 200px; right: 0; box-sizing: border-box;" data-expected-width="200" data-expected-height="100">
- <div class="item" data-expected-width="154" data-expected-height="56"></div>
- </div>
-height expected 56 but got 0
+PASS .grid 13
+PASS .grid 14
+PASS .grid 15
+PASS .grid 16
+PASS .grid 17
+PASS .grid 18
+PASS .grid 19
+PASS .grid 20
+PASS .grid 21
+PASS .grid 22
+PASS .grid 23
+PASS .grid 24
Modified: trunk/Source/WebCore/ChangeLog (272301 => 272302)
--- trunk/Source/WebCore/ChangeLog 2021-02-03 08:30:22 UTC (rev 272301)
+++ trunk/Source/WebCore/ChangeLog 2021-02-03 08:42:02 UTC (rev 272302)
@@ -1,3 +1,19 @@
+2021-02-03 Ziran Sun <[email protected]>
+
+ [css-grid] WPT test css/css-grid/grid-model/grid-box-sizing-001.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=204578
+
+ Reviewed by Javier Fernandez.
+
+ For a positioned element that specified both top/bottom should be treated as though
+ it has a height explicitly specified. Check on this case is missing in
+ RenderGrid::layoutBlock. This change adds check on hasDefiniteLogicalHeight() and make
+ sure we have a specific value of logical-height for the positioned elment that has
+ both top/bottom specified.
+
+ * rendering/RenderGrid.cpp:
+ (WebCore::RenderGrid::layoutBlock):
+
2021-02-03 Carlos Garcia Campos <[email protected]>
[GTK][WPE] Reduce the use of SoupURI in preparation for libsoup3
Modified: trunk/Source/WebCore/rendering/RenderGrid.cpp (272301 => 272302)
--- trunk/Source/WebCore/rendering/RenderGrid.cpp 2021-02-03 08:30:22 UTC (rev 272301)
+++ trunk/Source/WebCore/rendering/RenderGrid.cpp 2021-02-03 08:42:02 UTC (rev 272302)
@@ -191,10 +191,10 @@
beginUpdateScrollInfoAfterLayoutTransaction();
LayoutSize previousSize = size();
- // FIXME: We should use RenderBlock::hasDefiniteLogicalHeight() but it does not work for positioned stuff.
+ // FIXME: We should use RenderBlock::hasDefiniteLogicalHeight() only but it does not work for positioned stuff.
// FIXME: Consider caching the hasDefiniteLogicalHeight value throughout the layout.
- bool hasDefiniteLogicalHeight = hasOverridingLogicalHeight() || computeContentLogicalHeight(MainOrPreferredSize, style().logicalHeight(), WTF::nullopt);
-
+ // FIXME: We might need to cache the hasDefiniteLogicalHeight if the call of RenderBlock::hasDefiniteLogicalHeight() causes a relevant performance regression.
+ bool hasDefiniteLogicalHeight = RenderBlock::hasDefiniteLogicalHeight() || hasOverridingLogicalHeight() || computeContentLogicalHeight(MainOrPreferredSize, style().logicalHeight(), WTF::nullopt);
m_hasAnyOrthogonalItem = false;
for (auto* child = firstChildBox(); child; child = child->nextSiblingBox()) {
if (child->isOutOfFlowPositioned())
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes