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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutTable.cpp

Issue 1950573003: Improve handling of PaintInvalidationLayer (renamed to PaintInvalidationSubtree) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@LocationChange
Patch Set: Created 4 years, 7 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) 2 * Copyright (C) 1997 Martin Jones (mjones@kde.org)
3 * (C) 1997 Torben Weis (weis@kde.org) 3 * (C) 1997 Torben Weis (weis@kde.org)
4 * (C) 1998 Waldo Bastian (bastian@kde.org) 4 * (C) 1998 Waldo Bastian (bastian@kde.org)
5 * (C) 1999 Lars Knoll (knoll@kde.org) 5 * (C) 1999 Lars Knoll (knoll@kde.org)
6 * (C) 1999 Antti Koivisto (koivisto@kde.org) 6 * (C) 1999 Antti Koivisto (koivisto@kde.org)
7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc. All rights reserved. 7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc. All rights reserved.
8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) 8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1424 matching lines...) Expand 10 before | Expand all | Expand 10 after
1435 if (!section->isTableSection()) 1435 if (!section->isTableSection())
1436 continue; 1436 continue;
1437 for (LayoutTableRow* row = toLayoutTableSection(section)->firstRow(); ro w; row = row->nextRow()) { 1437 for (LayoutTableRow* row = toLayoutTableSection(section)->firstRow(); ro w; row = row->nextRow()) {
1438 for (LayoutTableCell* cell = row->firstCell(); cell; cell = cell->ne xtCell()) { 1438 for (LayoutTableCell* cell = row->firstCell(); cell; cell = cell->ne xtCell()) {
1439 ColAndColGroup colAndColGroup = colElementAtAbsoluteColumn(cell- >absoluteColumnIndex()); 1439 ColAndColGroup colAndColGroup = colElementAtAbsoluteColumn(cell- >absoluteColumnIndex());
1440 LayoutTableCol* column = colAndColGroup.col; 1440 LayoutTableCol* column = colAndColGroup.col;
1441 LayoutTableCol* columnGroup = colAndColGroup.colgroup; 1441 LayoutTableCol* columnGroup = colAndColGroup.colgroup;
1442 // Table cells paint container's background on the container's b acking instead of its own (if any), 1442 // Table cells paint container's background on the container's b acking instead of its own (if any),
1443 // so we must invalidate it by the containers. 1443 // so we must invalidate it by the containers.
1444 bool invalidated = false; 1444 bool invalidated = false;
1445 if ((columnGroup && columnGroup->shouldDoFullPaintInvalidation() ) 1445 if (childPaintInvalidationState.forcedSubtreeFullInvalidationWit hinContainer()
chrishtr 2016/05/09 22:20:42 Why the change here?
1446 || (columnGroup && columnGroup->shouldDoFullPaintInvalidatio n())
1446 || (column && column->shouldDoFullPaintInvalidation()) 1447 || (column && column->shouldDoFullPaintInvalidation())
1447 || section->shouldDoFullPaintInvalidation()) { 1448 || section->shouldDoFullPaintInvalidation()) {
1448 section->invalidateDisplayItemClient(*cell); 1449 section->invalidateDisplayItemClient(*cell);
1449 invalidated = true; 1450 invalidated = true;
1450 } 1451 }
1451 if ((!invalidated || row->isPaintInvalidationContainer()) && row ->shouldDoFullPaintInvalidation()) 1452 if ((!invalidated || row->isPaintInvalidationContainer()) && row ->shouldDoFullPaintInvalidation())
1452 row->invalidateDisplayItemClient(*cell); 1453 row->invalidateDisplayItemClient(*cell);
1453 } 1454 }
1454 } 1455 }
1455 } 1456 }
(...skipping 27 matching lines...) Expand all
1483 1484
1484 LayoutUnit LayoutTable::paddingRight() const 1485 LayoutUnit LayoutTable::paddingRight() const
1485 { 1486 {
1486 if (collapseBorders()) 1487 if (collapseBorders())
1487 return LayoutUnit(); 1488 return LayoutUnit();
1488 1489
1489 return LayoutBlock::paddingRight(); 1490 return LayoutBlock::paddingRight();
1490 } 1491 }
1491 1492
1492 } // namespace blink 1493 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698