| Index: Source/core/rendering/line/LineWidth.cpp
|
| diff --git a/Source/core/rendering/line/LineWidth.cpp b/Source/core/rendering/line/LineWidth.cpp
|
| index d5fc96c4f386bc24f3603d216763bbb85bbaea8a..d9d765617bd6dec2c752510bbc7b445f1028e480 100644
|
| --- a/Source/core/rendering/line/LineWidth.cpp
|
| +++ b/Source/core/rendering/line/LineWidth.cpp
|
| @@ -43,11 +43,9 @@ LineWidth::LineWidth(RenderBlockFlow& block, bool isFirstLine, IndentTextOrNot s
|
| , m_left(0)
|
| , m_right(0)
|
| , m_availableWidth(0)
|
| - , m_segment(0)
|
| , m_isFirstLine(isFirstLine)
|
| , m_shouldIndentText(shouldIndentText)
|
| {
|
| - updateCurrentShapeSegment();
|
| updateAvailableWidth();
|
| }
|
|
|
| @@ -58,11 +56,6 @@ void LineWidth::updateAvailableWidth(LayoutUnit replacedHeight)
|
| m_left = m_block.logicalLeftOffsetForLine(height, shouldIndentText(), logicalHeight).toFloat();
|
| m_right = m_block.logicalRightOffsetForLine(height, shouldIndentText(), logicalHeight).toFloat();
|
|
|
| - if (m_segment) {
|
| - m_left = std::max<float>(m_segment->logicalLeft, m_left);
|
| - m_right = std::min<float>(m_segment->logicalRight, m_right);
|
| - }
|
| -
|
| computeAvailableWidthFromLeftAndRight();
|
| }
|
|
|
| @@ -206,30 +199,12 @@ void LineWidth::fitBelowFloats(bool isFirstLine)
|
| newLineWidth = availableWidthAtOffset(m_block, floatLogicalBottom, shouldIndentText(), newLineLeft, newLineRight);
|
| lastFloatLogicalBottom = floatLogicalBottom;
|
|
|
| - if (newLineWidth >= m_uncommittedWidth) {
|
| - ShapeInsideInfo* shapeInsideInfo = m_block.layoutShapeInsideInfo();
|
| - if (shapeInsideInfo) {
|
| - // To safely update our shape segments, the current segment must be the first in this line, so committedWidth has to be 0
|
| - ASSERT(!m_committedWidth);
|
| -
|
| - LayoutUnit logicalOffsetFromShapeContainer = m_block.logicalOffsetFromShapeAncestorContainer(&shapeInsideInfo->owner()).height();
|
| - LayoutUnit lineHeight = m_block.lineHeight(false, m_block.isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
|
| - shapeInsideInfo->updateSegmentsForLine(lastFloatLogicalBottom + logicalOffsetFromShapeContainer, lineHeight);
|
| - updateCurrentShapeSegment();
|
| - updateAvailableWidth();
|
| - }
|
| + if (newLineWidth >= m_uncommittedWidth)
|
| break;
|
| - }
|
| }
|
| updateLineDimension(lastFloatLogicalBottom, newLineWidth, newLineLeft, newLineRight);
|
| }
|
|
|
| -void LineWidth::updateCurrentShapeSegment()
|
| -{
|
| - if (ShapeInsideInfo* shapeInsideInfo = m_block.layoutShapeInsideInfo())
|
| - m_segment = shapeInsideInfo->currentSegment();
|
| -}
|
| -
|
| void LineWidth::computeAvailableWidthFromLeftAndRight()
|
| {
|
| m_availableWidth = max(0.0f, m_right - m_left) + m_overhangWidth;
|
|
|