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 1871 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1882 while (!resolver.position().atEnd() && !requiresLineBox(resolver.position(),
lineInfo, LeadingWhitespace)) { | 1882 while (!resolver.position().atEnd() && !requiresLineBox(resolver.position(),
lineInfo, LeadingWhitespace)) { |
1883 RenderObject* object = resolver.position().m_obj; | 1883 RenderObject* object = resolver.position().m_obj; |
1884 if (object->isPositioned()) { | 1884 if (object->isPositioned()) { |
1885 setStaticPositions(m_block, toRenderBox(object)); | 1885 setStaticPositions(m_block, toRenderBox(object)); |
1886 if (object->style()->isOriginalDisplayInlineType()) { | 1886 if (object->style()->isOriginalDisplayInlineType()) { |
1887 resolver.runs().addRun(createRun(0, 1, object, resolver)); | 1887 resolver.runs().addRun(createRun(0, 1, object, resolver)); |
1888 lineInfo.incrementRunsFromLeadingWhitespace(); | 1888 lineInfo.incrementRunsFromLeadingWhitespace(); |
1889 } | 1889 } |
1890 } else if (object->isFloating()) | 1890 } else if (object->isFloating()) |
1891 m_block->positionNewFloatOnLine(m_block->insertFloatingObject(toRend
erBox(object)), lastFloatFromPreviousLine, lineInfo, width); | 1891 m_block->positionNewFloatOnLine(m_block->insertFloatingObject(toRend
erBox(object)), lastFloatFromPreviousLine, lineInfo, width); |
1892 else if (object->isText() && object->style()->hasTextCombine() && object
->isCombineText()) { | 1892 else if (object->isText() && object->style()->hasTextCombine() && object
->isCombineText() && !toRenderCombineText(object)->isCombined()) { |
1893 toRenderCombineText(object)->combineText(); | 1893 toRenderCombineText(object)->combineText(); |
1894 continue; | 1894 if (toRenderCombineText(object)->isCombined()) |
| 1895 continue; |
1895 } | 1896 } |
1896 resolver.increment(); | 1897 resolver.increment(); |
1897 } | 1898 } |
1898 resolver.commitExplicitEmbedding(); | 1899 resolver.commitExplicitEmbedding(); |
1899 } | 1900 } |
1900 | 1901 |
1901 // This is currently just used for list markers and inline flows that have line
boxes. Neither should | 1902 // This is currently just used for list markers and inline flows that have line
boxes. Neither should |
1902 // have an effect on whitespace at the start of the line. | 1903 // have an effect on whitespace at the start of the line. |
1903 static bool shouldSkipWhitespaceAfterStartObject(RenderBlock* block, RenderObjec
t* o, LineMidpointState& lineMidpointState) | 1904 static bool shouldSkipWhitespaceAfterStartObject(RenderBlock* block, RenderObjec
t* o, LineMidpointState& lineMidpointState) |
1904 { | 1905 { |
(...skipping 841 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2746 availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), false) -
logicalLeft; | 2747 availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), false) -
logicalLeft; |
2747 float totalLogicalWidth = logicalWidthForChild(child); | 2748 float totalLogicalWidth = logicalWidthForChild(child); |
2748 updateLogicalWidthForAlignment(textAlign, 0l, logicalLeft, totalLogicalWidth
, availableLogicalWidth, 0); | 2749 updateLogicalWidthForAlignment(textAlign, 0l, logicalLeft, totalLogicalWidth
, availableLogicalWidth, 0); |
2749 | 2750 |
2750 if (!style()->isLeftToRightDirection()) | 2751 if (!style()->isLeftToRightDirection()) |
2751 return logicalWidth() - (logicalLeft + totalLogicalWidth); | 2752 return logicalWidth() - (logicalLeft + totalLogicalWidth); |
2752 return logicalLeft; | 2753 return logicalLeft; |
2753 } | 2754 } |
2754 | 2755 |
2755 } | 2756 } |
OLD | NEW |