| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
| 5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
| 6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
| 7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
| 8 * | 8 * |
| 9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 90 const LayoutObject* = nullptr, | 90 const LayoutObject* = nullptr, |
| 91 int = 0) const override; | 91 int = 0) const override; |
| 92 #endif | 92 #endif |
| 93 const char* BoxName() const override; | 93 const char* BoxName() const override; |
| 94 | 94 |
| 95 InlineFlowBox* PrevLineBox() const { return prev_line_box_; } | 95 InlineFlowBox* PrevLineBox() const { return prev_line_box_; } |
| 96 InlineFlowBox* NextLineBox() const { return next_line_box_; } | 96 InlineFlowBox* NextLineBox() const { return next_line_box_; } |
| 97 void SetNextLineBox(InlineFlowBox* n) { next_line_box_ = n; } | 97 void SetNextLineBox(InlineFlowBox* n) { next_line_box_ = n; } |
| 98 void SetPreviousLineBox(InlineFlowBox* p) { prev_line_box_ = p; } | 98 void SetPreviousLineBox(InlineFlowBox* p) { prev_line_box_ = p; } |
| 99 | 99 |
| 100 InlineBox* FirstChild() const { | 100 InlineBox* FirstChild() const { return first_child_; } |
| 101 CheckConsistency(); | 101 InlineBox* LastChild() const { return last_child_; } |
| 102 return first_child_; | |
| 103 } | |
| 104 InlineBox* LastChild() const { | |
| 105 CheckConsistency(); | |
| 106 return last_child_; | |
| 107 } | |
| 108 | 102 |
| 109 bool IsLeaf() const final { return false; } | 103 bool IsLeaf() const final { return false; } |
| 110 | 104 |
| 111 InlineBox* FirstLeafChild() const; | 105 InlineBox* FirstLeafChild() const; |
| 112 InlineBox* LastLeafChild() const; | 106 InlineBox* LastLeafChild() const; |
| 113 | 107 |
| 114 typedef void (*CustomInlineBoxRangeReverse)( | 108 typedef void (*CustomInlineBoxRangeReverse)( |
| 115 Vector<InlineBox*>::iterator first, | 109 Vector<InlineBox*>::iterator first, |
| 116 Vector<InlineBox*>::iterator last); | 110 Vector<InlineBox*>::iterator last); |
| 117 void CollectLeafBoxesInLogicalOrder( | 111 void CollectLeafBoxesInLogicalOrder( |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 LayoutUnit block_right_edge, | 269 LayoutUnit block_right_edge, |
| 276 LayoutUnit ellipsis_width, | 270 LayoutUnit ellipsis_width, |
| 277 LayoutUnit& truncated_width, | 271 LayoutUnit& truncated_width, |
| 278 bool&, | 272 bool&, |
| 279 LayoutUnit logical_left_offset) override; | 273 LayoutUnit logical_left_offset) override; |
| 280 | 274 |
| 281 bool HasTextChildren() const { return has_text_children_; } | 275 bool HasTextChildren() const { return has_text_children_; } |
| 282 bool HasTextDescendants() const { return has_text_descendants_; } | 276 bool HasTextDescendants() const { return has_text_descendants_; } |
| 283 void SetHasTextDescendants() { has_text_descendants_ = true; } | 277 void SetHasTextDescendants() { has_text_descendants_ = true; } |
| 284 | 278 |
| 285 void CheckConsistency() const; | |
| 286 void SetHasBadChildList(); | 279 void SetHasBadChildList(); |
| 287 | 280 |
| 288 // Line visual and layout overflow are in the coordinate space of the block. | 281 // Line visual and layout overflow are in the coordinate space of the block. |
| 289 // This means that they aren't purely physical directions. For horizontal-tb | 282 // This means that they aren't purely physical directions. For horizontal-tb |
| 290 // and vertical-lr they will match physical directions, but for vertical-rl, | 283 // and vertical-lr they will match physical directions, but for vertical-rl, |
| 291 // the left/right respectively are flipped when compared to their physical | 284 // the left/right respectively are flipped when compared to their physical |
| 292 // counterparts. For example minX is on the left in vertical-lr, but it is on | 285 // counterparts. For example minX is on the left in vertical-lr, but it is on |
| 293 // the right in vertical-rl. | 286 // the right in vertical-rl. |
| 294 LayoutRect LayoutOverflowRect(LayoutUnit line_top, | 287 LayoutRect LayoutOverflowRect(LayoutUnit line_top, |
| 295 LayoutUnit line_bottom) const { | 288 LayoutUnit line_bottom) const { |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 476 // End of RootInlineBox-specific members. | 469 // End of RootInlineBox-specific members. |
| 477 | 470 |
| 478 #if DCHECK_IS_ON() | 471 #if DCHECK_IS_ON() |
| 479 private: | 472 private: |
| 480 unsigned has_bad_child_list_ : 1; | 473 unsigned has_bad_child_list_ : 1; |
| 481 #endif | 474 #endif |
| 482 }; | 475 }; |
| 483 | 476 |
| 484 DEFINE_INLINE_BOX_TYPE_CASTS(InlineFlowBox); | 477 DEFINE_INLINE_BOX_TYPE_CASTS(InlineFlowBox); |
| 485 | 478 |
| 486 #if !DCHECK_IS_ON() | |
| 487 inline void InlineFlowBox::CheckConsistency() const {} | |
| 488 #endif | |
| 489 | |
| 490 inline void InlineFlowBox::SetHasBadChildList() { | 479 inline void InlineFlowBox::SetHasBadChildList() { |
| 491 #if DCHECK_IS_ON() | 480 #if DCHECK_IS_ON() |
| 492 has_bad_child_list_ = true; | 481 has_bad_child_list_ = true; |
| 493 #endif | 482 #endif |
| 494 } | 483 } |
| 495 | 484 |
| 496 } // namespace blink | 485 } // namespace blink |
| 497 | 486 |
| 498 #endif // InlineFlowBox_h | 487 #endif // InlineFlowBox_h |
| OLD | NEW |