Title: [254388] trunk/Source/WebCore
Revision
254388
Author
[email protected]
Date
2020-01-10 18:49:47 -0800 (Fri, 10 Jan 2020)

Log Message

[LFC] TableFormattingContext::layoutTableCellBox should take HorizontalConstraints
https://bugs.webkit.org/show_bug.cgi?id=206075
<rdar://problem/58483791>

Reviewed by Antti Koivisto.

* layout/tableformatting/TableFormattingContext.cpp:
(WebCore::Layout::TableFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableFormattingContext::layoutTableCellBox):
* layout/tableformatting/TableFormattingContext.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (254387 => 254388)


--- trunk/Source/WebCore/ChangeLog	2020-01-11 02:32:00 UTC (rev 254387)
+++ trunk/Source/WebCore/ChangeLog	2020-01-11 02:49:47 UTC (rev 254388)
@@ -1,3 +1,16 @@
+2020-01-10  Zalan Bujtas  <[email protected]>
+
+        [LFC] TableFormattingContext::layoutTableCellBox should take HorizontalConstraints
+        https://bugs.webkit.org/show_bug.cgi?id=206075
+        <rdar://problem/58483791>
+
+        Reviewed by Antti Koivisto.
+
+        * layout/tableformatting/TableFormattingContext.cpp:
+        (WebCore::Layout::TableFormattingContext::layoutInFlowContent):
+        (WebCore::Layout::TableFormattingContext::layoutTableCellBox):
+        * layout/tableformatting/TableFormattingContext.h:
+
 2020-01-10  Simon Fraser  <[email protected]>
 
         Introduce ENABLE_META_VIEWPORT and use it in some WK2 code

Modified: trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp (254387 => 254388)


--- trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp	2020-01-11 02:32:00 UTC (rev 254387)
+++ trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp	2020-01-11 02:49:47 UTC (rev 254388)
@@ -58,7 +58,7 @@
 {
 }
 
-void TableFormattingContext::layoutInFlowContent(InvalidationState& invalidationState, const HorizontalConstraints&, const VerticalConstraints&)
+void TableFormattingContext::layoutInFlowContent(InvalidationState& invalidationState, const HorizontalConstraints& horizontalConstraints, const VerticalConstraints&)
 {
     auto& grid = formattingState().tableGrid();
     auto& columnsContext = grid.columnsContext();
@@ -79,7 +79,7 @@
     ASSERT(!cellList.isEmpty());
     for (auto& cell : cellList) {
         auto& cellLayoutBox = cell->tableCellBox;
-        layoutTableCellBox(cellLayoutBox, columnList.at(cell->position.x()), invalidationState);
+        layoutTableCellBox(cellLayoutBox, columnList.at(cell->position.x()), invalidationState, horizontalConstraints);
         // FIXME: Add support for column and row spanning and this requires a 2 pass layout.
         auto& row = grid.rows().at(cell->position.y());
         row.setLogicalHeight(std::max(row.logicalHeight(), geometryForBox(cellLayoutBox).marginBoxHeight()));
@@ -97,9 +97,8 @@
     setComputedGeometryForRows();
 }
 
-void TableFormattingContext::layoutTableCellBox(const Box& cellLayoutBox, const TableGrid::Column& column, InvalidationState& invalidationState)
+void TableFormattingContext::layoutTableCellBox(const Box& cellLayoutBox, const TableGrid::Column& column, InvalidationState& invalidationState, const HorizontalConstraints& horizontalConstraints)
 {
-    auto horizontalConstraints = Geometry::horizontalConstraintsForInFlow(geometryForBox(*cellLayoutBox.containingBlock()));
     computeBorderAndPadding(cellLayoutBox, horizontalConstraints);
     // Margins do not apply to internal table elements.
     auto& cellDisplayBox = formattingState().displayBox(cellLayoutBox);

Modified: trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.h (254387 => 254388)


--- trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.h	2020-01-11 02:32:00 UTC (rev 254387)
+++ trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.h	2020-01-11 02:49:47 UTC (rev 254388)
@@ -59,7 +59,7 @@
     TableFormattingContext::Geometry geometry() const { return Geometry(*this); }
 
     IntrinsicWidthConstraints computedIntrinsicWidthConstraints() override;
-    void layoutTableCellBox(const Box& cellLayoutBox, const TableGrid::Column&, InvalidationState&);
+    void layoutTableCellBox(const Box& cellLayoutBox, const TableGrid::Column&, InvalidationState&, const HorizontalConstraints&);
     void positionTableCells();
     void setComputedGeometryForRows();
     void setComputedGeometryForSections();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to