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

Side by Side Diff: Source/core/rendering/RenderTableSection.cpp

Issue 129853005: Fix checkForRepaintDuringLayout do return false when doing repaintAfterLayout. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink@master
Patch Set: Created 6 years, 11 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, 2008, 2009, 2010 Apple Inc. All rights reserved. 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 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 980 matching lines...) Expand 10 before | Expand all | Expand 10 after
991 cell->setLogicalHeight(rHeight); 991 cell->setLogicalHeight(rHeight);
992 } 992 }
993 993
994 LayoutSize childOffset(cell->location() - oldCellRect.location()); 994 LayoutSize childOffset(cell->location() - oldCellRect.location());
995 if (childOffset.width() || childOffset.height()) { 995 if (childOffset.width() || childOffset.height()) {
996 view()->addLayoutDelta(childOffset); 996 view()->addLayoutDelta(childOffset);
997 997
998 // If the child moved, we have to repaint it as well as any floa ting/positioned 998 // If the child moved, we have to repaint it as well as any floa ting/positioned
999 // descendants. An exception is if we need a layout. In this c ase, we know we're going to 999 // descendants. An exception is if we need a layout. In this c ase, we know we're going to
1000 // repaint ourselves (and the child) anyway. 1000 // repaint ourselves (and the child) anyway.
1001 if (!RuntimeEnabledFeatures::repaintAfterLayoutEnabled() 1001 if (!table()->selfNeedsLayout() && cell->checkForRepaintDuringLa yout())
1002 && !table()->selfNeedsLayout() && cell->checkForRepaintDurin gLayout())
1003 cell->repaintDuringLayoutIfMoved(oldCellRect); 1002 cell->repaintDuringLayoutIfMoved(oldCellRect);
1004 } 1003 }
1005 } 1004 }
1006 if (rowHeightIncreaseForPagination) { 1005 if (rowHeightIncreaseForPagination) {
1007 for (unsigned rowIndex = r + 1; rowIndex <= totalRows; rowIndex++) 1006 for (unsigned rowIndex = r + 1; rowIndex <= totalRows; rowIndex++)
1008 m_rowPos[rowIndex] += rowHeightIncreaseForPagination; 1007 m_rowPos[rowIndex] += rowHeightIncreaseForPagination;
1009 for (unsigned c = 0; c < nEffCols; ++c) { 1008 for (unsigned c = 0; c < nEffCols; ++c) {
1010 Vector<RenderTableCell*, 1>& cells = cellAt(r, c).cells; 1009 Vector<RenderTableCell*, 1>& cells = cellAt(r, c).cells;
1011 for (size_t i = 0; i < cells.size(); ++i) 1010 for (size_t i = 0; i < cells.size(); ++i)
1012 cells[i]->setLogicalHeight(cells[i]->logicalHeight() + rowHe ightIncreaseForPagination); 1011 cells[i]->setLogicalHeight(cells[i]->logicalHeight() + rowHe ightIncreaseForPagination);
(...skipping 802 matching lines...) Expand 10 before | Expand all | Expand 10 after
1815 if (!style()->isLeftToRightDirection()) 1814 if (!style()->isLeftToRightDirection())
1816 cellLocation.setX(table()->columnPositions()[table()->numEffCols()] - ta ble()->columnPositions()[table()->colToEffCol(cell->col() + cell->colSpan())] + horizontalBorderSpacing); 1815 cellLocation.setX(table()->columnPositions()[table()->numEffCols()] - ta ble()->columnPositions()[table()->colToEffCol(cell->col() + cell->colSpan())] + horizontalBorderSpacing);
1817 else 1816 else
1818 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont alBorderSpacing); 1817 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont alBorderSpacing);
1819 1818
1820 cell->setLogicalLocation(cellLocation); 1819 cell->setLogicalLocation(cellLocation);
1821 view()->addLayoutDelta(oldCellLocation - cell->location()); 1820 view()->addLayoutDelta(oldCellLocation - cell->location());
1822 } 1821 }
1823 1822
1824 } // namespace WebCore 1823 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderTableRow.cpp ('k') | Source/core/rendering/RenderTextControlSingleLine.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698