Chromium Code Reviews| 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, 2009, 2013 Apple Inc. All rights | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2009, 2013 Apple Inc. All rights |
| 8 * reserved. | 8 * reserved. |
| 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 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 350 | 350 |
| 351 bool IsRepeatingHeaderGroup() const; | 351 bool IsRepeatingHeaderGroup() const; |
| 352 | 352 |
| 353 void UpdateLayout() override; | 353 void UpdateLayout() override; |
| 354 | 354 |
| 355 CellSpan FullSectionRowSpan() const { return CellSpan(0, grid_.size()); } | 355 CellSpan FullSectionRowSpan() const { return CellSpan(0, grid_.size()); } |
| 356 CellSpan FullTableEffectiveColumnSpan() const { | 356 CellSpan FullTableEffectiveColumnSpan() const { |
| 357 return CellSpan(0, Table()->NumEffectiveColumns()); | 357 return CellSpan(0, Table()->NumEffectiveColumns()); |
| 358 } | 358 } |
| 359 | 359 |
| 360 // Return the primary cell of the table grid slot above or below grid slot | |
| 361 // (row, effectiveColumn). | |
| 362 LayoutTableCell* PrimaryCellAboveInTable(unsigned row, | |
| 363 unsigned effective_column); | |
| 364 LayoutTableCell* PrimaryCellBelowInTable(unsigned row, | |
| 365 unsigned effective_column); | |
| 366 | |
| 367 void InvalidateCellCollapsedBordersIntersectingRow(unsigned row_index); | |
| 368 | |
| 360 protected: | 369 protected: |
| 361 void StyleDidChange(StyleDifference, const ComputedStyle* old_style) override; | 370 void StyleDidChange(StyleDifference, const ComputedStyle* old_style) override; |
| 362 bool NodeAtPoint(HitTestResult&, | 371 bool NodeAtPoint(HitTestResult&, |
| 363 const HitTestLocation& location_in_container, | 372 const HitTestLocation& location_in_container, |
| 364 const LayoutPoint& accumulated_offset, | 373 const LayoutPoint& accumulated_offset, |
| 365 HitTestAction) override; | 374 HitTestAction) override; |
| 366 | 375 |
| 367 private: | 376 private: |
| 368 bool IsOfType(LayoutObjectType type) const override { | 377 bool IsOfType(LayoutObjectType type) const override { |
| 369 return type == kLayoutObjectTableSection || LayoutBox::IsOfType(type); | 378 return type == kLayoutObjectTableSection || LayoutBox::IsOfType(type); |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 446 void RelayoutCellIfFlexed(LayoutTableCell&, int row_index, int row_height); | 455 void RelayoutCellIfFlexed(LayoutTableCell&, int row_index, int row_height); |
| 447 | 456 |
| 448 int LogicalHeightForRow(const LayoutTableRow&) const; | 457 int LogicalHeightForRow(const LayoutTableRow&) const; |
| 449 | 458 |
| 450 // Honor breaking restrictions inside the table row, and adjust position and | 459 // Honor breaking restrictions inside the table row, and adjust position and |
| 451 // size accordingly. | 460 // size accordingly. |
| 452 void AdjustRowForPagination(LayoutTableRow&, SubtreeLayoutScope&); | 461 void AdjustRowForPagination(LayoutTableRow&, SubtreeLayoutScope&); |
| 453 | 462 |
| 454 bool PaintedOutputOfObjectHasNoEffectRegardlessOfSize() const override; | 463 bool PaintedOutputOfObjectHasNoEffectRegardlessOfSize() const override; |
| 455 | 464 |
| 465 void InvalidateCollapsedBordersOfAffectedCells(); | |
|
wkorman
2017/04/27 22:05:36
Same as previous comment re: "OfAffectedCells"
| |
| 466 | |
| 456 // The representation of the rows and their cells (CellStruct). | 467 // The representation of the rows and their cells (CellStruct). |
| 457 Vector<RowStruct> grid_; | 468 Vector<RowStruct> grid_; |
| 458 | 469 |
| 459 // The logical offset of each row from the top of the section. | 470 // The logical offset of each row from the top of the section. |
| 460 // | 471 // |
| 461 // Note that this Vector has one more entry than the number of rows so that | 472 // Note that this Vector has one more entry than the number of rows so that |
| 462 // we can keep track of the final size of the section. That is, | 473 // we can keep track of the final size of the section. That is, |
| 463 // m_rowPos[m_grid.size()] is a valid entry. | 474 // m_rowPos[m_grid.size()] is a valid entry. |
| 464 // | 475 // |
| 465 // To know a row's height at |rowIndex|, use the formula: | 476 // To know a row's height at |rowIndex|, use the formula: |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 502 | 513 |
| 503 // Whether any cell spans multiple rows or cols. | 514 // Whether any cell spans multiple rows or cols. |
| 504 bool has_spanning_cells_; | 515 bool has_spanning_cells_; |
| 505 }; | 516 }; |
| 506 | 517 |
| 507 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutTableSection, IsTableSection()); | 518 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutTableSection, IsTableSection()); |
| 508 | 519 |
| 509 } // namespace blink | 520 } // namespace blink |
| 510 | 521 |
| 511 #endif // LayoutTableSection_h | 522 #endif // LayoutTableSection_h |
| OLD | NEW |