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

Unified Diff: Source/core/rendering/RenderTableSection.cpp

Issue 264963004: Mark when we may have been invalidated to early out on repaintTreeAfterLayout. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 8 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
Index: Source/core/rendering/RenderTableSection.cpp
diff --git a/Source/core/rendering/RenderTableSection.cpp b/Source/core/rendering/RenderTableSection.cpp
index e594892ca244c1416edd9b8852b8d6c6594f41ca..0758794586ada0093bfc10a484dcfa337aedab21 100644
--- a/Source/core/rendering/RenderTableSection.cpp
+++ b/Source/core/rendering/RenderTableSection.cpp
@@ -731,6 +731,8 @@ void RenderTableSection::layout()
ASSERT(!needsCellRecalc());
ASSERT(!table()->needsSectionRecalc());
+ setMayNeedInvalidation(true);
+
// addChild may over-grow m_grid but we don't want to throw away the memory too early as addChild
// can be called in a loop (e.g during parsing). Doing it now ensures we have a stable-enough structure.
m_grid.shrinkToFit();
@@ -751,6 +753,8 @@ void RenderTableSection::layout()
if (!cell || current.inColSpan)
continue;
+ cell->setMayNeedInvalidation(true);
+
unsigned endCol = startColumn;
unsigned cspan = cell->colSpan();
while (cspan && endCol < cols) {
@@ -914,6 +918,8 @@ void RenderTableSection::layoutRows()
if (!cell || cs.inColSpan)
continue;
+ cell->setMayNeedInvalidation(true);
+
int rowIndex = cell->rowIndex();
int rHeight = m_rowPos[rowIndex + cell->rowSpan()] - m_rowPos[rowIndex] - vspacing;

Powered by Google App Engine
This is Rietveld 408576698