Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1039)

Unified Diff: Source/core/layout/LayoutTableCell.cpp

Issue 1025213002: Begin tracking why layout is invalidated (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/layout/LayoutTable.cpp ('k') | Source/core/layout/LayoutTableCol.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/layout/LayoutTableCell.cpp
diff --git a/Source/core/layout/LayoutTableCell.cpp b/Source/core/layout/LayoutTableCell.cpp
index 2e2301e798644ce8fdec090956ac87e62bf59665..d13d64ae2ac62d0f43fad36c9b0aaa13de93d59b 100644
--- a/Source/core/layout/LayoutTableCell.cpp
+++ b/Source/core/layout/LayoutTableCell.cpp
@@ -102,7 +102,7 @@ void LayoutTableCell::colSpanOrRowSpanChanged()
updateColAndRowSpanFlags();
- setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation();
+ setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation(LayoutInvalidationReason::AttributeChanged);
if (parent() && section())
section()->setNeedsCellRecalc();
}
@@ -210,7 +210,7 @@ void LayoutTableCell::computeIntrinsicPadding(int rowHeight, SubtreeLayoutScope&
// FIXME: Changing an intrinsic padding shouldn't trigger a relayout as it only shifts the cell inside the row but
// doesn't change the logical height.
if (intrinsicPaddingBefore != oldIntrinsicPaddingBefore || intrinsicPaddingAfter != oldIntrinsicPaddingAfter)
- layouter.setNeedsLayout(this);
+ layouter.setNeedsLayout(this, LayoutInvalidationReason::PaddingChanged);
}
void LayoutTableCell::updateLogicalWidth()
@@ -222,7 +222,7 @@ void LayoutTableCell::setCellLogicalWidth(int tableLayoutLogicalWidth, SubtreeLa
if (tableLayoutLogicalWidth == logicalWidth())
return;
- layouter.setNeedsLayout(this);
+ layouter.setNeedsLayout(this, LayoutInvalidationReason::SizeChanged);
setLogicalWidth(tableLayoutLogicalWidth);
setCellWidthChanged(true);
@@ -244,7 +244,7 @@ void LayoutTableCell::layout()
int newIntrinsicPaddingBefore = std::max<LayoutUnit>(0, intrinsicPaddingBefore() - std::max<LayoutUnit>(0, cellBaselinePosition() - oldCellBaseline));
setIntrinsicPaddingBefore(newIntrinsicPaddingBefore);
SubtreeLayoutScope layouter(*this);
- layouter.setNeedsLayout(this);
+ layouter.setNeedsLayout(this, LayoutInvalidationReason::TableChanged);
layoutBlock(cellWidthChanged());
}
« no previous file with comments | « Source/core/layout/LayoutTable.cpp ('k') | Source/core/layout/LayoutTableCol.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698