| 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, 2007, 2008, 2009, 2010, 2013 Apple Inc. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 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 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 582 // FIXME: The optimisation below doesn't work since the internal table | 582 // FIXME: The optimisation below doesn't work since the internal table |
| 583 // layout could have changed. We need to add a flag to the table | 583 // layout could have changed. We need to add a flag to the table |
| 584 // layout that tells us if something has changed in the min max | 584 // layout that tells us if something has changed in the min max |
| 585 // calculations to do it correctly. | 585 // calculations to do it correctly. |
| 586 // if ( oldWidth != width() || columns.size() + 1 != columnPos.size() ) | 586 // if ( oldWidth != width() || columns.size() + 1 != columnPos.size() ) |
| 587 m_tableLayout->layout(); | 587 m_tableLayout->layout(); |
| 588 | 588 |
| 589 // Lay out top captions. | 589 // Lay out top captions. |
| 590 // FIXME: Collapse caption margin. | 590 // FIXME: Collapse caption margin. |
| 591 for (unsigned i = 0; i < m_captions.size(); i++) { | 591 for (unsigned i = 0; i < m_captions.size(); i++) { |
| 592 if (m_captions[i]->style()->captionSide() == ECaptionSide::Bottom) | 592 if (m_captions[i]->style()->captionSide() == ECaptionSide::kBottom) |
| 593 continue; | 593 continue; |
| 594 layoutCaption(*m_captions[i], layouter); | 594 layoutCaption(*m_captions[i], layouter); |
| 595 } | 595 } |
| 596 | 596 |
| 597 LayoutTableSection* topSection = this->topSection(); | 597 LayoutTableSection* topSection = this->topSection(); |
| 598 LayoutTableSection* bottomSection = this->bottomSection(); | 598 LayoutTableSection* bottomSection = this->bottomSection(); |
| 599 | 599 |
| 600 // This is the border-before edge of the "table box", relative to the "table | 600 // This is the border-before edge of the "table box", relative to the "table |
| 601 // wrapper box", i.e. right after all top captions. | 601 // wrapper box", i.e. right after all top captions. |
| 602 // https://www.w3.org/TR/2011/REC-CSS2-20110607/tables.html#model | 602 // https://www.w3.org/TR/2011/REC-CSS2-20110607/tables.html#model |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 706 section->updateLayerTransformAfterLayout(); | 706 section->updateLayerTransformAfterLayout(); |
| 707 section->addVisualEffectOverflow(); | 707 section->addVisualEffectOverflow(); |
| 708 | 708 |
| 709 section = sectionBelow(section); | 709 section = sectionBelow(section); |
| 710 } | 710 } |
| 711 | 711 |
| 712 setLogicalHeight(logicalHeight() + borderAndPaddingAfter); | 712 setLogicalHeight(logicalHeight() + borderAndPaddingAfter); |
| 713 | 713 |
| 714 // Lay out bottom captions. | 714 // Lay out bottom captions. |
| 715 for (unsigned i = 0; i < m_captions.size(); i++) { | 715 for (unsigned i = 0; i < m_captions.size(); i++) { |
| 716 if (m_captions[i]->style()->captionSide() != ECaptionSide::Bottom) | 716 if (m_captions[i]->style()->captionSide() != ECaptionSide::kBottom) |
| 717 continue; | 717 continue; |
| 718 layoutCaption(*m_captions[i], layouter); | 718 layoutCaption(*m_captions[i], layouter); |
| 719 } | 719 } |
| 720 | 720 |
| 721 updateLogicalHeight(); | 721 updateLogicalHeight(); |
| 722 | 722 |
| 723 // table can be containing block of positioned elements. | 723 // table can be containing block of positioned elements. |
| 724 bool dimensionChanged = oldLogicalWidth != logicalWidth() || | 724 bool dimensionChanged = oldLogicalWidth != logicalWidth() || |
| 725 oldLogicalHeight != logicalHeight(); | 725 oldLogicalHeight != logicalHeight(); |
| 726 layoutPositionedObjects(dimensionChanged); | 726 layoutPositionedObjects(dimensionChanged); |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 818 const LayoutPoint& paintOffset) const { | 818 const LayoutPoint& paintOffset) const { |
| 819 TablePainter(*this).paintObject(paintInfo, paintOffset); | 819 TablePainter(*this).paintObject(paintInfo, paintOffset); |
| 820 } | 820 } |
| 821 | 821 |
| 822 void LayoutTable::subtractCaptionRect(LayoutRect& rect) const { | 822 void LayoutTable::subtractCaptionRect(LayoutRect& rect) const { |
| 823 for (unsigned i = 0; i < m_captions.size(); i++) { | 823 for (unsigned i = 0; i < m_captions.size(); i++) { |
| 824 LayoutUnit captionLogicalHeight = m_captions[i]->logicalHeight() + | 824 LayoutUnit captionLogicalHeight = m_captions[i]->logicalHeight() + |
| 825 m_captions[i]->marginBefore() + | 825 m_captions[i]->marginBefore() + |
| 826 m_captions[i]->marginAfter(); | 826 m_captions[i]->marginAfter(); |
| 827 bool captionIsBefore = | 827 bool captionIsBefore = |
| 828 (m_captions[i]->style()->captionSide() != ECaptionSide::Bottom) ^ | 828 (m_captions[i]->style()->captionSide() != ECaptionSide::kBottom) ^ |
| 829 style()->isFlippedBlocksWritingMode(); | 829 style()->isFlippedBlocksWritingMode(); |
| 830 if (style()->isHorizontalWritingMode()) { | 830 if (style()->isHorizontalWritingMode()) { |
| 831 rect.setHeight(rect.height() - captionLogicalHeight); | 831 rect.setHeight(rect.height() - captionLogicalHeight); |
| 832 if (captionIsBefore) | 832 if (captionIsBefore) |
| 833 rect.move(LayoutUnit(), captionLogicalHeight); | 833 rect.move(LayoutUnit(), captionLogicalHeight); |
| 834 } else { | 834 } else { |
| 835 rect.setWidth(rect.width() - captionLogicalHeight); | 835 rect.setWidth(rect.width() - captionLogicalHeight); |
| 836 if (captionIsBefore) | 836 if (captionIsBefore) |
| 837 rect.move(captionLogicalHeight, LayoutUnit()); | 837 rect.move(captionLogicalHeight, LayoutUnit()); |
| 838 } | 838 } |
| (...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1688 } | 1688 } |
| 1689 | 1689 |
| 1690 LayoutUnit LayoutTable::paddingRight() const { | 1690 LayoutUnit LayoutTable::paddingRight() const { |
| 1691 if (collapseBorders()) | 1691 if (collapseBorders()) |
| 1692 return LayoutUnit(); | 1692 return LayoutUnit(); |
| 1693 | 1693 |
| 1694 return LayoutBlock::paddingRight(); | 1694 return LayoutBlock::paddingRight(); |
| 1695 } | 1695 } |
| 1696 | 1696 |
| 1697 } // namespace blink | 1697 } // namespace blink |
| OLD | NEW |