| 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 83b770615fdf4e52e4ad12b30e70ad62e6f4f394..6a5712cd296d55d82d299592986ee6c8e244340c 100644
|
| --- a/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/TablePaintInvalidator.cpp
|
| @@ -55,6 +55,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
|
| @@ -62,7 +63,8 @@ PaintInvalidationReason TablePaintInvalidator::invalidatePaintIfNeeded() {
|
| if (section->backgroundChangedSinceLastPaintInvalidation()) {
|
| sectionInvalidator
|
| .slowSetPaintingLayerNeedsRepaintAndInvalidateDisplayItemClient(
|
| - *cell, PaintInvalidationStyleChange);
|
| + cell->backgroundDisplayItemClient(),
|
| + PaintInvalidationStyleChange);
|
| invalidated = true;
|
| } else if (hasColChangedBackground) {
|
| LayoutTable::ColAndColGroup colAndColGroup =
|
| @@ -75,15 +77,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);
|
| + }
|
| }
|
| }
|
| }
|
|
|