| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. | 4 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 FloatQuad absoluteContentQuad() const; | 179 FloatQuad absoluteContentQuad() const; |
| 180 | 180 |
| 181 // This returns the content area of the box (excluding padding and border).
The only difference with contentBoxRect is that computedCSSContentBoxRect | 181 // This returns the content area of the box (excluding padding and border).
The only difference with contentBoxRect is that computedCSSContentBoxRect |
| 182 // does include the intrinsic padding in the content box as this is what som
e callers expect (like getComputedStyle). | 182 // does include the intrinsic padding in the content box as this is what som
e callers expect (like getComputedStyle). |
| 183 LayoutRect computedCSSContentBoxRect() const { return LayoutRect(borderLeft(
) + computedCSSPaddingLeft(), borderTop() + computedCSSPaddingTop(), clientWidth
() - computedCSSPaddingLeft() - computedCSSPaddingRight(), clientHeight() - comp
utedCSSPaddingTop() - computedCSSPaddingBottom()); } | 183 LayoutRect computedCSSContentBoxRect() const { return LayoutRect(borderLeft(
) + computedCSSPaddingLeft(), borderTop() + computedCSSPaddingTop(), clientWidth
() - computedCSSPaddingLeft() - computedCSSPaddingRight(), clientHeight() - comp
utedCSSPaddingTop() - computedCSSPaddingBottom()); } |
| 184 | 184 |
| 185 virtual void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& addit
ionalOffset) const override; | 185 virtual void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& addit
ionalOffset) const override; |
| 186 | 186 |
| 187 // Use this with caution! No type checking is done! | 187 // Use this with caution! No type checking is done! |
| 188 RenderBox* previousSiblingBox() const; | 188 RenderBox* previousSiblingBox() const; |
| 189 RenderBox* previousInFlowSiblingBox() const; |
| 189 RenderBox* nextSiblingBox() const; | 190 RenderBox* nextSiblingBox() const; |
| 191 RenderBox* nextInFlowSiblingBox() const; |
| 190 RenderBox* parentBox() const; | 192 RenderBox* parentBox() const; |
| 191 | 193 |
| 192 bool canResize() const; | 194 bool canResize() const; |
| 193 | 195 |
| 194 // Visual and layout overflow are in the coordinate space of the box. This
means that they aren't purely physical directions. | 196 // Visual and layout overflow are in the coordinate space of the box. This
means that they aren't purely physical directions. |
| 195 // For horizontal-tb and vertical-lr they will match physical directions, bu
t for horizontal-bt and vertical-rl, the top/bottom and left/right | 197 // For horizontal-tb and vertical-lr they will match physical directions, bu
t for horizontal-bt and vertical-rl, the top/bottom and left/right |
| 196 // respectively are flipped when compared to their physical counterparts. F
or example minX is on the left in vertical-lr, | 198 // respectively are flipped when compared to their physical counterparts. F
or example minX is on the left in vertical-lr, |
| 197 // but it is on the right in vertical-rl. | 199 // but it is on the right in vertical-rl. |
| 198 LayoutRect noOverflowRect() const; | 200 LayoutRect noOverflowRect() const; |
| 199 LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layo
utOverflowRect() : noOverflowRect(); } | 201 LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layo
utOverflowRect() : noOverflowRect(); } |
| (...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 347 | 349 |
| 348 LayoutUnit overrideContainingBlockContentLogicalWidth() const; | 350 LayoutUnit overrideContainingBlockContentLogicalWidth() const; |
| 349 LayoutUnit overrideContainingBlockContentLogicalHeight() const; | 351 LayoutUnit overrideContainingBlockContentLogicalHeight() const; |
| 350 bool hasOverrideContainingBlockLogicalWidth() const; | 352 bool hasOverrideContainingBlockLogicalWidth() const; |
| 351 bool hasOverrideContainingBlockLogicalHeight() const; | 353 bool hasOverrideContainingBlockLogicalHeight() const; |
| 352 void setOverrideContainingBlockContentLogicalWidth(LayoutUnit); | 354 void setOverrideContainingBlockContentLogicalWidth(LayoutUnit); |
| 353 void setOverrideContainingBlockContentLogicalHeight(LayoutUnit); | 355 void setOverrideContainingBlockContentLogicalHeight(LayoutUnit); |
| 354 void clearContainingBlockOverrideSize(); | 356 void clearContainingBlockOverrideSize(); |
| 355 void clearOverrideContainingBlockContentLogicalHeight(); | 357 void clearOverrideContainingBlockContentLogicalHeight(); |
| 356 | 358 |
| 359 LayoutUnit extraInlineOffset() const; |
| 360 LayoutUnit extraBlockOffset() const; |
| 361 void setExtraInlineOffset(LayoutUnit inlineOffest); |
| 362 void setExtraBlockOffset(LayoutUnit blockOffest); |
| 363 void clearExtraInlineAndBlockOffests(); |
| 364 |
| 357 virtual LayoutSize offsetFromContainer(const RenderObject*, const LayoutPoin
t&, bool* offsetDependsOnPoint = 0) const override; | 365 virtual LayoutSize offsetFromContainer(const RenderObject*, const LayoutPoin
t&, bool* offsetDependsOnPoint = 0) const override; |
| 358 | 366 |
| 359 LayoutUnit adjustBorderBoxLogicalWidthForBoxSizing(LayoutUnit width) const; | 367 LayoutUnit adjustBorderBoxLogicalWidthForBoxSizing(LayoutUnit width) const; |
| 360 LayoutUnit adjustBorderBoxLogicalHeightForBoxSizing(LayoutUnit height) const
; | 368 LayoutUnit adjustBorderBoxLogicalHeightForBoxSizing(LayoutUnit height) const
; |
| 361 LayoutUnit adjustContentBoxLogicalWidthForBoxSizing(LayoutUnit width) const; | 369 LayoutUnit adjustContentBoxLogicalWidthForBoxSizing(LayoutUnit width) const; |
| 362 LayoutUnit adjustContentBoxLogicalHeightForBoxSizing(LayoutUnit height) cons
t; | 370 LayoutUnit adjustContentBoxLogicalHeightForBoxSizing(LayoutUnit height) cons
t; |
| 363 | 371 |
| 364 struct ComputedMarginValues { | 372 struct ComputedMarginValues { |
| 365 ComputedMarginValues() { } | 373 ComputedMarginValues() { } |
| 366 | 374 |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 451 LayoutUnit availableLogicalHeightUsing(const Length&, AvailableLogicalHeight
Type) const; | 459 LayoutUnit availableLogicalHeightUsing(const Length&, AvailableLogicalHeight
Type) const; |
| 452 | 460 |
| 453 // There are a few cases where we need to refer specifically to the availabl
e physical width and available physical height. | 461 // There are a few cases where we need to refer specifically to the availabl
e physical width and available physical height. |
| 454 // Relative positioning is one of those cases, since left/top offsets are ph
ysical. | 462 // Relative positioning is one of those cases, since left/top offsets are ph
ysical. |
| 455 LayoutUnit availableWidth() const { return style()->isHorizontalWritingMode(
) ? availableLogicalWidth() : availableLogicalHeight(IncludeMarginBorderPadding)
; } | 463 LayoutUnit availableWidth() const { return style()->isHorizontalWritingMode(
) ? availableLogicalWidth() : availableLogicalHeight(IncludeMarginBorderPadding)
; } |
| 456 LayoutUnit availableHeight() const { return style()->isHorizontalWritingMode
() ? availableLogicalHeight(IncludeMarginBorderPadding) : availableLogicalWidth(
); } | 464 LayoutUnit availableHeight() const { return style()->isHorizontalWritingMode
() ? availableLogicalHeight(IncludeMarginBorderPadding) : availableLogicalWidth(
); } |
| 457 | 465 |
| 458 virtual int verticalScrollbarWidth() const; | 466 virtual int verticalScrollbarWidth() const; |
| 459 int horizontalScrollbarHeight() const; | 467 int horizontalScrollbarHeight() const; |
| 460 int intrinsicScrollbarLogicalWidth() const; | 468 int intrinsicScrollbarLogicalWidth() const; |
| 469 int scrollbarLogicalWidth() const { return style()->isHorizontalWritingMode(
) ? verticalScrollbarWidth() : horizontalScrollbarHeight(); } |
| 461 int scrollbarLogicalHeight() const { return style()->isHorizontalWritingMode
() ? horizontalScrollbarHeight() : verticalScrollbarWidth(); } | 470 int scrollbarLogicalHeight() const { return style()->isHorizontalWritingMode
() ? horizontalScrollbarHeight() : verticalScrollbarWidth(); } |
| 462 virtual bool scroll(ScrollDirection, ScrollGranularity, float delta = 1); | 471 virtual bool scroll(ScrollDirection, ScrollGranularity, float delta = 1); |
| 463 bool canBeScrolledAndHasScrollableArea() const; | 472 bool canBeScrolledAndHasScrollableArea() const; |
| 464 virtual bool canBeProgramaticallyScrolled() const; | 473 virtual bool canBeProgramaticallyScrolled() const; |
| 465 virtual void autoscroll(const IntPoint&); | 474 virtual void autoscroll(const IntPoint&); |
| 466 bool canAutoscroll() const; | 475 bool canAutoscroll() const; |
| 467 IntSize calculateAutoscrollDirection(const IntPoint& windowPoint) const; | 476 IntSize calculateAutoscrollDirection(const IntPoint& windowPoint) const; |
| 468 static RenderBox* findAutoscrollable(RenderObject*); | 477 static RenderBox* findAutoscrollable(RenderObject*); |
| 469 virtual void stopAutoscroll() { } | 478 virtual void stopAutoscroll() { } |
| 470 virtual void panScroll(const IntPoint&); | 479 virtual void panScroll(const IntPoint&); |
| (...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 777 OwnPtr<RenderBoxRareData> m_rareData; | 786 OwnPtr<RenderBoxRareData> m_rareData; |
| 778 }; | 787 }; |
| 779 | 788 |
| 780 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBox, isBox()); | 789 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBox, isBox()); |
| 781 | 790 |
| 782 inline RenderBox* RenderBox::previousSiblingBox() const | 791 inline RenderBox* RenderBox::previousSiblingBox() const |
| 783 { | 792 { |
| 784 return toRenderBox(previousSibling()); | 793 return toRenderBox(previousSibling()); |
| 785 } | 794 } |
| 786 | 795 |
| 796 inline RenderBox* RenderBox::previousInFlowSiblingBox() const |
| 797 { |
| 798 RenderBox* previous = previousSiblingBox(); |
| 799 while (previous && previous->isOutOfFlowPositioned()) |
| 800 previous = previous->previousSiblingBox(); |
| 801 return previous; |
| 802 } |
| 803 |
| 787 inline RenderBox* RenderBox::nextSiblingBox() const | 804 inline RenderBox* RenderBox::nextSiblingBox() const |
| 788 { | 805 { |
| 789 return toRenderBox(nextSibling()); | 806 return toRenderBox(nextSibling()); |
| 790 } | 807 } |
| 791 | 808 |
| 809 inline RenderBox* RenderBox::nextInFlowSiblingBox() const |
| 810 { |
| 811 RenderBox* next = nextSiblingBox(); |
| 812 while (next && next->isOutOfFlowPositioned()) |
| 813 next = next->nextSiblingBox(); |
| 814 return next; |
| 815 } |
| 816 |
| 792 inline RenderBox* RenderBox::parentBox() const | 817 inline RenderBox* RenderBox::parentBox() const |
| 793 { | 818 { |
| 794 return toRenderBox(parent()); | 819 return toRenderBox(parent()); |
| 795 } | 820 } |
| 796 | 821 |
| 797 inline RenderBox* RenderBox::firstChildBox() const | 822 inline RenderBox* RenderBox::firstChildBox() const |
| 798 { | 823 { |
| 799 return toRenderBox(slowFirstChild()); | 824 return toRenderBox(slowFirstChild()); |
| 800 } | 825 } |
| 801 | 826 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 815 if (UNLIKELY(inlineBoxWrapper() != 0)) | 840 if (UNLIKELY(inlineBoxWrapper() != 0)) |
| 816 deleteLineBoxWrapper(); | 841 deleteLineBoxWrapper(); |
| 817 } | 842 } |
| 818 | 843 |
| 819 ensureRareData().m_inlineBoxWrapper = boxWrapper; | 844 ensureRareData().m_inlineBoxWrapper = boxWrapper; |
| 820 } | 845 } |
| 821 | 846 |
| 822 } // namespace blink | 847 } // namespace blink |
| 823 | 848 |
| 824 #endif // RenderBox_h | 849 #endif // RenderBox_h |
| OLD | NEW |