Title: [263509] trunk
- Revision
- 263509
- Author
- [email protected]
- Date
- 2020-06-25 08:19:40 -0700 (Thu, 25 Jun 2020)
Log Message
[LFC][TFC] Use the flexing value as the base for the available horizontal space distribution
https://bugs.webkit.org/show_bug.cgi?id=213599
Reviewed by Antti Koivisto.
Source/WebCore:
Test: fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html
* layout/tableformatting/TableLayout.cpp:
(WebCore::Layout::TableFormattingContext::TableLayout::distributedHorizontalSpace):
LayoutTests:
* fast/layoutformattingcontext/table-fixed-width-with-max-distribution.html:
* fast/layoutformattingcontext/table-min-max-flex-distribution-simple-expected.html: Added.
* fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (263508 => 263509)
--- trunk/LayoutTests/ChangeLog 2020-06-25 15:03:40 UTC (rev 263508)
+++ trunk/LayoutTests/ChangeLog 2020-06-25 15:19:40 UTC (rev 263509)
@@ -1,3 +1,14 @@
+2020-06-25 Zalan Bujtas <[email protected]>
+
+ [LFC][TFC] Use the flexing value as the base for the available horizontal space distribution
+ https://bugs.webkit.org/show_bug.cgi?id=213599
+
+ Reviewed by Antti Koivisto.
+
+ * fast/layoutformattingcontext/table-fixed-width-with-max-distribution.html:
+ * fast/layoutformattingcontext/table-min-max-flex-distribution-simple-expected.html: Added.
+ * fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html: Added.
+
2020-06-25 Karl Rackler <[email protected]>
Remove expectation for fast/canvas/canvas-blending-fill-style.html as they are passing.
Modified: trunk/LayoutTests/fast/layoutformattingcontext/table-fixed-width-with-max-distribution.html (263508 => 263509)
--- trunk/LayoutTests/fast/layoutformattingcontext/table-fixed-width-with-max-distribution.html 2020-06-25 15:03:40 UTC (rev 263508)
+++ trunk/LayoutTests/fast/layoutformattingcontext/table-fixed-width-with-max-distribution.html 2020-06-25 15:19:40 UTC (rev 263509)
@@ -16,7 +16,6 @@
<tr><td style="width: 22px"></td><td style="width: 22px; height: 20px;">iiiiiiii</td></tr>
</table>
-</style>
<table>
<tr><td style="width: 22px"></td><td>iiiiiiii iiiiiiii</td></tr>
<tr><td style="width: 22px"></td><td style="height: 20px;">iiiiiiii</td></tr>
Added: trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple-expected.html (0 => 263509)
--- trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple-expected.html (rev 0)
+++ trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple-expected.html 2020-06-25 15:19:40 UTC (rev 263509)
@@ -0,0 +1,9 @@
+<!DOCTYPE html><!-- webkit-test-runner [ internal:LayoutFormattingContextEnabled=true internal:LayoutFormattingContextIntegrationEnabled=false ] -->
+<style>
+div {
+ width: 77px;
+ height: 52px;
+ outline: 1px solid green;
+}
+</style>
+<div></div>
Added: trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html (0 => 263509)
--- trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html (rev 0)
+++ trunk/LayoutTests/fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html 2020-06-25 15:19:40 UTC (rev 263509)
@@ -0,0 +1,13 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ internal:LayoutFormattingContextEnabled=true internal:LayoutFormattingContextIntegrationEnabled=false ] -->
+<style>
+table {
+ width: 60px;
+ font-size: 20px;
+ outline: 1px solid green;
+ color: white;
+}
+
+</style>
+<table>
+<tr><td>iii iiiiiii</td><td>iiiii i</td>
+</table>
Modified: trunk/Source/WebCore/ChangeLog (263508 => 263509)
--- trunk/Source/WebCore/ChangeLog 2020-06-25 15:03:40 UTC (rev 263508)
+++ trunk/Source/WebCore/ChangeLog 2020-06-25 15:19:40 UTC (rev 263509)
@@ -1,3 +1,15 @@
+2020-06-25 Zalan Bujtas <[email protected]>
+
+ [LFC][TFC] Use the flexing value as the base for the available horizontal space distribution
+ https://bugs.webkit.org/show_bug.cgi?id=213599
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/layoutformattingcontext/table-min-max-flex-distribution-simple.html
+
+ * layout/tableformatting/TableLayout.cpp:
+ (WebCore::Layout::TableFormattingContext::TableLayout::distributedHorizontalSpace):
+
2020-06-25 Antoine Quint <[email protected]>
REGRESSION (r260360): easing curves are broken on JS-originated animations
Modified: trunk/Source/WebCore/layout/tableformatting/TableLayout.cpp (263508 => 263509)
--- trunk/Source/WebCore/layout/tableformatting/TableLayout.cpp 2020-06-25 15:03:40 UTC (rev 263508)
+++ trunk/Source/WebCore/layout/tableformatting/TableLayout.cpp 2020-06-25 15:19:40 UTC (rev 263509)
@@ -238,17 +238,18 @@
TableFormattingContext::TableLayout::DistributedSpaces TableFormattingContext::TableLayout::distributedHorizontalSpace(LayoutUnit availableHorizontalSpace)
{
enum class ColumnWidthBalancingBase { MinimumWidth, MaximumWidth };
- auto columnWidthBalancingBase = availableHorizontalSpace == m_grid.widthConstraints()->maximum ? ColumnWidthBalancingBase::MaximumWidth : ColumnWidthBalancingBase::MinimumWidth;
+ auto columnWidthBalancingBase = availableHorizontalSpace >= m_grid.widthConstraints()->maximum ? ColumnWidthBalancingBase::MaximumWidth : ColumnWidthBalancingBase::MinimumWidth;
return distributeAvailableSpace<ColumnSpan>(m_grid, availableHorizontalSpace, [&] (const TableGrid::Slot& slot, size_t columnIndex) {
auto& column = m_grid.columns().list()[columnIndex];
auto columnBoxFixedWidth = column.box() ? column.box()->columnWidth().valueOr(0_lu) : 0_lu;
+ auto minimumWidth = std::max<float>(slot.widthConstraints().minimum, columnBoxFixedWidth);
+ auto maximumWidth = std::max<float>(slot.widthConstraints().maximum, columnBoxFixedWidth);
+
if (columnWidthBalancingBase == ColumnWidthBalancingBase::MinimumWidth) {
- auto minimumWidth = std::max<float>(slot.widthConstraints().minimum, columnBoxFixedWidth);
- return GridSpace { minimumWidth, minimumWidth };
+ ASSERT(maximumWidth >= minimumWidth);
+ return GridSpace { minimumWidth, maximumWidth - minimumWidth };
}
// When the column has a fixed width cell, the maximum width balancing is based on the minimum width.
- auto minimumWidth = std::max<float>(slot.widthConstraints().minimum, columnBoxFixedWidth);
- auto maximumWidth = std::max<float>(slot.widthConstraints().maximum, columnBoxFixedWidth);
if (column.isFixedWidth())
return GridSpace { minimumWidth, maximumWidth };
return GridSpace { maximumWidth, maximumWidth };
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes