| OLD | NEW |
| 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, 2013 Apple Inc. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2013 Apple Inc. |
| 8 * All rights reserved. | 8 * All rights reserved. |
| 9 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 9 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 10 * | 10 * |
| (...skipping 972 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 983 ASSERT(endCol < table()->effectiveColumns().size()); | 983 ASSERT(endCol < table()->effectiveColumns().size()); |
| 984 cspan -= table()->effectiveColumns()[endCol].span; | 984 cspan -= table()->effectiveColumns()[endCol].span; |
| 985 endCol++; | 985 endCol++; |
| 986 } | 986 } |
| 987 int tableLayoutLogicalWidth = columnPos[endCol] - columnPos[startColumn] - | 987 int tableLayoutLogicalWidth = columnPos[endCol] - columnPos[startColumn] - |
| 988 table()->hBorderSpacing(); | 988 table()->hBorderSpacing(); |
| 989 cell->setCellLogicalWidth(tableLayoutLogicalWidth, layouter); | 989 cell->setCellLogicalWidth(tableLayoutLogicalWidth, layouter); |
| 990 } | 990 } |
| 991 | 991 |
| 992 if (LayoutTableRow* rowLayoutObject = m_grid[r].rowLayoutObject) { | 992 if (LayoutTableRow* rowLayoutObject = m_grid[r].rowLayoutObject) { |
| 993 if (state.isPaginated()) { | 993 if (state.isPaginated()) |
| 994 rowLayoutObject->setLogicalTop(rowLogicalTop); | 994 rowLayoutObject->setLogicalTop(rowLogicalTop); |
| 995 if (!rowLayoutObject->needsLayout()) | 995 if (!rowLayoutObject->needsLayout()) |
| 996 markChildForPaginationRelayoutIfNeeded(*rowLayoutObject, layouter); | 996 markChildForPaginationRelayoutIfNeeded(*rowLayoutObject, layouter); |
| 997 } | |
| 998 rowLayoutObject->layoutIfNeeded(); | 997 rowLayoutObject->layoutIfNeeded(); |
| 999 if (state.isPaginated()) { | 998 if (state.isPaginated()) { |
| 1000 adjustRowForPagination(*rowLayoutObject, layouter); | 999 adjustRowForPagination(*rowLayoutObject, layouter); |
| 1000 updateFragmentationInfoForChild(*rowLayoutObject); |
| 1001 rowLogicalTop = rowLayoutObject->logicalBottom(); | 1001 rowLogicalTop = rowLayoutObject->logicalBottom(); |
| 1002 rowLogicalTop += LayoutUnit(table()->vBorderSpacing()); | 1002 rowLogicalTop += LayoutUnit(table()->vBorderSpacing()); |
| 1003 } | 1003 } |
| 1004 } | 1004 } |
| 1005 } | 1005 } |
| 1006 | 1006 |
| 1007 clearNeedsLayout(); | 1007 clearNeedsLayout(); |
| 1008 } | 1008 } |
| 1009 | 1009 |
| 1010 void LayoutTableSection::distributeExtraLogicalHeightToPercentRows( | 1010 void LayoutTableSection::distributeExtraLogicalHeightToPercentRows( |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1197 crossesPageBoundary(LayoutUnit(rowLogicalTop), LayoutUnit(rHeight))) | 1197 crossesPageBoundary(LayoutUnit(rowLogicalTop), LayoutUnit(rHeight))) |
| 1198 cellVerticalAlign = VerticalAlignTop; | 1198 cellVerticalAlign = VerticalAlignTop; |
| 1199 else | 1199 else |
| 1200 cellVerticalAlign = cell->style()->verticalAlign(); | 1200 cellVerticalAlign = cell->style()->verticalAlign(); |
| 1201 cell->computeIntrinsicPadding(rHeight, cellVerticalAlign, layouter); | 1201 cell->computeIntrinsicPadding(rHeight, cellVerticalAlign, layouter); |
| 1202 | 1202 |
| 1203 LayoutRect oldCellRect = cell->frameRect(); | 1203 LayoutRect oldCellRect = cell->frameRect(); |
| 1204 | 1204 |
| 1205 setLogicalPositionForCell(cell, c); | 1205 setLogicalPositionForCell(cell, c); |
| 1206 | 1206 |
| 1207 if (!cell->needsLayout()) | |
| 1208 markChildForPaginationRelayoutIfNeeded(*cell, layouter); | |
| 1209 | |
| 1210 cell->layoutIfNeeded(); | 1207 cell->layoutIfNeeded(); |
| 1211 | 1208 |
| 1212 LayoutSize childOffset(cell->location() - oldCellRect.location()); | 1209 LayoutSize childOffset(cell->location() - oldCellRect.location()); |
| 1213 if (childOffset.width() || childOffset.height()) { | 1210 if (childOffset.width() || childOffset.height()) { |
| 1214 // If the child moved, we have to issue paint invalidations to it as | 1211 // If the child moved, we have to issue paint invalidations to it as |
| 1215 // well as any floating/positioned descendants. An exception is if we | 1212 // well as any floating/positioned descendants. An exception is if we |
| 1216 // need a layout. In this case, we know we're going to issue paint | 1213 // need a layout. In this case, we know we're going to issue paint |
| 1217 // invalidations ourselves (and the child) anyway. | 1214 // invalidations ourselves (and the child) anyway. |
| 1218 if (!table()->selfNeedsLayout()) | 1215 if (!table()->selfNeedsLayout()) |
| 1219 cell->setMayNeedPaintInvalidation(); | 1216 cell->setMayNeedPaintInvalidation(); |
| (...skipping 858 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2078 // the header in all columns. | 2075 // the header in all columns. |
| 2079 // Note that this is in flow thread coordinates, not visual coordinates. The | 2076 // Note that this is in flow thread coordinates, not visual coordinates. The |
| 2080 // enclosing LayoutFlowThread will convert to visual coordinates. | 2077 // enclosing LayoutFlowThread will convert to visual coordinates. |
| 2081 if (table()->header() == this && isRepeatingHeaderGroup()) | 2078 if (table()->header() == this && isRepeatingHeaderGroup()) |
| 2082 rect.setHeight(table()->logicalHeight()); | 2079 rect.setHeight(table()->logicalHeight()); |
| 2083 return LayoutTableBoxComponent::mapToVisualRectInAncestorSpace(ancestor, rect, | 2080 return LayoutTableBoxComponent::mapToVisualRectInAncestorSpace(ancestor, rect, |
| 2084 flags); | 2081 flags); |
| 2085 } | 2082 } |
| 2086 | 2083 |
| 2087 } // namespace blink | 2084 } // namespace blink |
| OLD | NEW |