OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r
ight reserved. | 3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r
ight reserved. |
4 * Copyright (C) 2010 Google Inc. All rights reserved. | 4 * Copyright (C) 2010 Google 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 1680 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1691 | 1691 |
1692 if (firstChild()) { | 1692 if (firstChild()) { |
1693 // In full layout mode, clear the line boxes of children upfront. Otherw
ise, | 1693 // In full layout mode, clear the line boxes of children upfront. Otherw
ise, |
1694 // siblings can run into stale root lineboxes during layout. Then layout | 1694 // siblings can run into stale root lineboxes during layout. Then layout |
1695 // the replaced elements later. In partial layout mode, line boxes are n
ot | 1695 // the replaced elements later. In partial layout mode, line boxes are n
ot |
1696 // deleted and only dirtied. In that case, we can layout the replaced | 1696 // deleted and only dirtied. In that case, we can layout the replaced |
1697 // elements at the same time. | 1697 // elements at the same time. |
1698 Vector<RenderBox*> replacedChildren; | 1698 Vector<RenderBox*> replacedChildren; |
1699 for (InlineWalker walker(this); !walker.atEnd(); walker.advance()) { | 1699 for (InlineWalker walker(this); !walker.atEnd(); walker.advance()) { |
1700 RenderObject* o = walker.current(); | 1700 RenderObject* o = walker.current(); |
| 1701 o->setMayNeedInvalidation(true); |
1701 | 1702 |
1702 if (!layoutState.hasInlineChild() && o->isInline()) | 1703 if (!layoutState.hasInlineChild() && o->isInline()) |
1703 layoutState.setHasInlineChild(true); | 1704 layoutState.setHasInlineChild(true); |
1704 | 1705 |
1705 if (o->isReplaced() || o->isFloating() || o->isOutOfFlowPositioned()
) { | 1706 if (o->isReplaced() || o->isFloating() || o->isOutOfFlowPositioned()
) { |
1706 RenderBox* box = toRenderBox(o); | 1707 RenderBox* box = toRenderBox(o); |
1707 | 1708 |
1708 updateBlockChildDirtyBitsBeforeLayout(relayoutChildren, box); | 1709 updateBlockChildDirtyBitsBeforeLayout(relayoutChildren, box); |
1709 | 1710 |
1710 if (o->isOutOfFlowPositioned()) | 1711 if (o->isOutOfFlowPositioned()) |
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2193 float logicalLeft = logicalLeftOffsetForLine(logicalHeight(), false).toFloat
(); | 2194 float logicalLeft = logicalLeftOffsetForLine(logicalHeight(), false).toFloat
(); |
2194 float availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), fal
se) - logicalLeft; | 2195 float availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), fal
se) - logicalLeft; |
2195 updateLogicalWidthForAlignment(textAlign, 0, 0, logicalLeft, totalLogicalWid
th, availableLogicalWidth, 0); | 2196 updateLogicalWidthForAlignment(textAlign, 0, 0, logicalLeft, totalLogicalWid
th, availableLogicalWidth, 0); |
2196 | 2197 |
2197 if (!style()->isLeftToRightDirection()) | 2198 if (!style()->isLeftToRightDirection()) |
2198 return logicalWidth() - logicalLeft; | 2199 return logicalWidth() - logicalLeft; |
2199 return logicalLeft; | 2200 return logicalLeft; |
2200 } | 2201 } |
2201 | 2202 |
2202 } | 2203 } |
OLD | NEW |