Title: [262104] trunk
Revision
262104
Author
[email protected]
Date
2020-05-23 13:53:52 -0700 (Sat, 23 May 2020)

Log Message

[LFC][TFC] Take row border into account when computing collapsed borders.
https://bugs.webkit.org/show_bug.cgi?id=212305

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-collapsed-row-border.html

* layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:
(WebCore::Layout::TableWrapperBlockFormattingContext::computeBorderAndPaddingForTableBox):

LayoutTests:

* fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html: Added.
* fast/layoutformattingcontext/table-simple-collapsed-row-border.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (262103 => 262104)


--- trunk/LayoutTests/ChangeLog	2020-05-23 20:13:57 UTC (rev 262103)
+++ trunk/LayoutTests/ChangeLog	2020-05-23 20:53:52 UTC (rev 262104)
@@ -1,5 +1,15 @@
 2020-05-23  Zalan Bujtas  <[email protected]>
 
+        [LFC][TFC] Take row border into account when computing collapsed borders.
+        https://bugs.webkit.org/show_bug.cgi?id=212305
+
+        Reviewed by Antti Koivisto.
+
+        * fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html: Added.
+        * fast/layoutformattingcontext/table-simple-collapsed-row-border.html: Added.
+
+2020-05-23  Zalan Bujtas  <[email protected]>
+
         [LFC][TFC] Maximum constraint of a cell should never be smaller than the minimum width
         https://bugs.webkit.org/show_bug.cgi?id=212304
 

Added: trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html (0 => 262104)


--- trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html	                        (rev 0)
+++ trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html	2020-05-23 20:53:52 UTC (rev 262104)
@@ -0,0 +1,9 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ internal:LayoutFormattingContextEnabled=true internal:LayoutFormattingContextIntegrationEnabled=false ] -->
+<style>
+div {
+    height: 100px;
+    width: 100px;
+    border: 100px solid green;
+}
+</style>
+<div></div>

Added: trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border.html (0 => 262104)


--- trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border.html	                        (rev 0)
+++ trunk/LayoutTests/fast/layoutformattingcontext/table-simple-collapsed-row-border.html	2020-05-23 20:53:52 UTC (rev 262104)
@@ -0,0 +1,19 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ internal:LayoutFormattingContextEnabled=true internal:LayoutFormattingContextIntegrationEnabled=false ] -->
+<style>
+table {
+    border-collapse: collapse;
+}
+td {
+    width: 50px;
+    height: 100px;
+    padding: 0px;
+}
+
+tr {
+    border: 100px solid green;
+}
+</style>
+<table>
+<tr><td></td><td></td></tr>
+</tbody>
+</table>

Modified: trunk/Source/WebCore/ChangeLog (262103 => 262104)


--- trunk/Source/WebCore/ChangeLog	2020-05-23 20:13:57 UTC (rev 262103)
+++ trunk/Source/WebCore/ChangeLog	2020-05-23 20:53:52 UTC (rev 262104)
@@ -1,3 +1,15 @@
+2020-05-23  Zalan Bujtas  <[email protected]>
+
+        [LFC][TFC] Take row border into account when computing collapsed borders.
+        https://bugs.webkit.org/show_bug.cgi?id=212305
+
+        Reviewed by Antti Koivisto.
+
+        Test: fast/layoutformattingcontext/table-simple-collapsed-row-border.html
+
+        * layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:
+        (WebCore::Layout::TableWrapperBlockFormattingContext::computeBorderAndPaddingForTableBox):
+
 2020-05-23  Jack Lee  <[email protected]>
 
         ASSERTION FAILED: (!s_current || &m_view != &s_current->m_view) in RenderTreeBuilder::RenderTreeBuilder

Modified: trunk/Source/WebCore/layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp (262103 => 262104)


--- trunk/Source/WebCore/layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp	2020-05-23 20:13:57 UTC (rev 262103)
+++ trunk/Source/WebCore/layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp	2020-05-23 20:53:52 UTC (rev 262104)
@@ -110,6 +110,16 @@
             topBorder = std::max(topBorder, geometry().computedBorder(boxInFirstRox).vertical.top);
             bottomBorder = std::max(bottomBorder, geometry().computedBorder(boxInLastRow).vertical.bottom);
         }
+
+        auto& rows = grid.rows().list();
+        topBorder = std::max(topBorder, geometry().computedBorder(rows[0].box()).vertical.top);
+        for (auto& row : rows) {
+            auto horiztonalBorder = geometry().computedBorder(row.box()).horizontal;
+            leftBorder = std::max(leftBorder, horiztonalBorder.left);
+            rightBorder = std::max(rightBorder, horiztonalBorder.right);
+        }
+        bottomBorder = std::max(topBorder, geometry().computedBorder(rows[rows.size() - 1].box()).vertical.bottom);
+
         auto collapsedBorder = Edges { { leftBorder, rightBorder }, { topBorder, bottomBorder } };
         grid.setCollapsedBorder(collapsedBorder);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to