| Index: third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| diff --git a/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp b/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| index ae42aec7653bb485b37f094488470f9829c2f779..c71d27343766b3cb8200b9cddc2856ad8a228fee 100644
|
| --- a/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| @@ -50,6 +50,7 @@ PaintInvalidationReason TablePaintInvalidator::invalidatePaintIfNeeded() {
|
| continue;
|
| for (LayoutTableCell* cell = row->firstCell(); cell;
|
| cell = cell->nextCell()) {
|
| + cell->ensureIsReadyForPaintInvalidation();
|
| bool invalidated = false;
|
| // Table cells paint container's background on the container's backing
|
| // instead of its own (if any), so we must invalidate it by the
|
| @@ -57,7 +58,8 @@ PaintInvalidationReason TablePaintInvalidator::invalidatePaintIfNeeded() {
|
| if (section->backgroundChangedSinceLastPaintInvalidation()) {
|
| sectionInvalidator
|
| .slowSetPaintingLayerNeedsRepaintAndInvalidateDisplayItemClient(
|
| - *cell, PaintInvalidationStyleChange);
|
| + cell->backgroundDisplayItemClient(),
|
| + PaintInvalidationStyleChange);
|
| invalidated = true;
|
| } else if (hasColChangedBackground) {
|
| LayoutTable::ColAndColGroup colAndColGroup =
|
| @@ -70,15 +72,18 @@ PaintInvalidationReason TablePaintInvalidator::invalidatePaintIfNeeded() {
|
| column->backgroundChangedSinceLastPaintInvalidation())) {
|
| sectionInvalidator
|
| .slowSetPaintingLayerNeedsRepaintAndInvalidateDisplayItemClient(
|
| - *cell, PaintInvalidationStyleChange);
|
| + cell->backgroundDisplayItemClient(),
|
| + PaintInvalidationStyleChange);
|
| invalidated = true;
|
| }
|
| }
|
| if ((!invalidated || row->hasSelfPaintingLayer()) &&
|
| - row->backgroundChangedSinceLastPaintInvalidation())
|
| + row->backgroundChangedSinceLastPaintInvalidation()) {
|
| ObjectPaintInvalidator(*row)
|
| .slowSetPaintingLayerNeedsRepaintAndInvalidateDisplayItemClient(
|
| - *cell, PaintInvalidationStyleChange);
|
| + cell->backgroundDisplayItemClient(),
|
| + PaintInvalidationStyleChange);
|
| + }
|
| }
|
| }
|
| }
|
|
|