Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Side by Side Diff: Source/core/rendering/RenderBox.h

Issue 18720003: Correct overflow propagation in BTT and RTL writing-modes (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 166
167 // Use this with caution! No type checking is done! 167 // Use this with caution! No type checking is done!
168 RenderBox* previousSiblingBox() const; 168 RenderBox* previousSiblingBox() const;
169 RenderBox* nextSiblingBox() const; 169 RenderBox* nextSiblingBox() const;
170 RenderBox* parentBox() const; 170 RenderBox* parentBox() const;
171 171
172 // Visual and layout overflow are in the coordinate space of the box. This means that they aren't purely physical directions. 172 // Visual and layout overflow are in the coordinate space of the box. This means that they aren't purely physical directions.
173 // 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 173 // 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
174 // respectively are flipped when compared to their physical counterparts. F or example minX is on the left in vertical-lr, 174 // respectively are flipped when compared to their physical counterparts. F or example minX is on the left in vertical-lr,
175 // but it is on the right in vertical-rl. 175 // but it is on the right in vertical-rl.
176 LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layo utOverflowRect() : clientBoxRect(); } 176 LayoutRect noOverflowRect() const;
177 LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layo utOverflowRect() : noOverflowRect(); }
177 IntRect pixelSnappedLayoutOverflowRect() const { return pixelSnappedIntRect( layoutOverflowRect()); } 178 IntRect pixelSnappedLayoutOverflowRect() const { return pixelSnappedIntRect( layoutOverflowRect()); }
178 LayoutSize maxLayoutOverflow() const { return LayoutSize(layoutOverflowRect( ).maxX(), layoutOverflowRect().maxY()); } 179 LayoutSize maxLayoutOverflow() const { return LayoutSize(layoutOverflowRect( ).maxX(), layoutOverflowRect().maxY()); }
179 LayoutUnit logicalLeftLayoutOverflow() const { return style()->isHorizontalW ritingMode() ? layoutOverflowRect().x() : layoutOverflowRect().y(); } 180 LayoutUnit logicalLeftLayoutOverflow() const { return style()->isHorizontalW ritingMode() ? layoutOverflowRect().x() : layoutOverflowRect().y(); }
180 LayoutUnit logicalRightLayoutOverflow() const { return style()->isHorizontal WritingMode() ? layoutOverflowRect().maxX() : layoutOverflowRect().maxY(); } 181 LayoutUnit logicalRightLayoutOverflow() const { return style()->isHorizontal WritingMode() ? layoutOverflowRect().maxX() : layoutOverflowRect().maxY(); }
181 182
182 virtual LayoutRect visualOverflowRect() const { return m_overflow ? m_overfl ow->visualOverflowRect() : borderBoxRect(); } 183 virtual LayoutRect visualOverflowRect() const { return m_overflow ? m_overfl ow->visualOverflowRect() : borderBoxRect(); }
183 LayoutUnit logicalLeftVisualOverflow() const { return style()->isHorizontalW ritingMode() ? visualOverflowRect().x() : visualOverflowRect().y(); } 184 LayoutUnit logicalLeftVisualOverflow() const { return style()->isHorizontalW ritingMode() ? visualOverflowRect().x() : visualOverflowRect().y(); }
184 LayoutUnit logicalRightVisualOverflow() const { return style()->isHorizontal WritingMode() ? visualOverflowRect().maxX() : visualOverflowRect().maxY(); } 185 LayoutUnit logicalRightVisualOverflow() const { return style()->isHorizontal WritingMode() ? visualOverflowRect().maxX() : visualOverflowRect().maxY(); }
185 186
186 LayoutRect overflowRectForPaintRejection() const; 187 LayoutRect overflowRectForPaintRejection() const;
(...skipping 549 matching lines...) Expand 10 before | Expand all | Expand 10 after
736 if (UNLIKELY(m_inlineBoxWrapper != 0)) 737 if (UNLIKELY(m_inlineBoxWrapper != 0))
737 deleteLineBoxWrapper(); 738 deleteLineBoxWrapper();
738 } 739 }
739 740
740 m_inlineBoxWrapper = boxWrapper; 741 m_inlineBoxWrapper = boxWrapper;
741 } 742 }
742 743
743 } // namespace WebCore 744 } // namespace WebCore
744 745
745 #endif // RenderBox_h 746 #endif // RenderBox_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698