Chromium Code Reviews| Index: third_party/WebKit/Source/core/layout/LayoutTable.cpp |
| diff --git a/third_party/WebKit/Source/core/layout/LayoutTable.cpp b/third_party/WebKit/Source/core/layout/LayoutTable.cpp |
| index 38961ef6b09c737491c0767b5d21aab5a27c0e4a..950d7bc0b8b300a93132980cf900ab785d5a7a12 100644 |
| --- a/third_party/WebKit/Source/core/layout/LayoutTable.cpp |
| +++ b/third_party/WebKit/Source/core/layout/LayoutTable.cpp |
| @@ -543,9 +543,12 @@ void LayoutTable::layout() |
| section->setLogicalTop(logicalOffset); |
| section->layoutRows(); |
| logicalOffset += section->logicalHeight(); |
| - if (isPaginated && m_head && m_head == section && section->logicalHeight() < section->pageLogicalHeightForOffset(logicalOffset)) { |
| + // If the section is a repeating header group that allows at least one row of content then store the |
| + // offset for other sections to offset their rows against. |
| + if (isPaginated && m_head && m_head == section && section->logicalHeight() < section->pageLogicalHeightForOffset(logicalOffset) |
| + && section->getPaginationBreakability() != LayoutBox::AllowAnyBreaks) { |
| LayoutUnit offsetForTableHeaders = state.heightOffsetForTableHeaders(); |
| - offsetForTableHeaders += section->logicalHeight(); |
| + offsetForTableHeaders += section->logicalHeight() - section->paginationStrutForRow(section->firstRow(), section->logicalTop()); |
|
rhogan
2016/08/09 20:34:39
We're only interested in the actual content height
|
| state.setHeightOffsetForTableHeaders(offsetForTableHeaders); |
| } |
| } |