<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[197462] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/197462">197462</a></dd>
<dt>Author</dt> <dd>zalan@apple.com</dd>
<dt>Date</dt> <dd>2016-03-02 13:42:22 -0800 (Wed, 02 Mar 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Use IndentTextOrNot instead of passing isFirstLine/shouldIndentText as bool.
https://bugs.webkit.org/show_bug.cgi?id=154628

Reviewed by Simon Fraser.

No change in behaviour.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
(WebCore::RenderBlock::logicalLeftSelectionOffset):
(WebCore::RenderBlock::logicalRightSelectionOffset):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::availableLogicalWidthForLineInRegion):
(WebCore::RenderBlock::logicalRightOffsetForLineInRegion):
(WebCore::RenderBlock::logicalLeftOffsetForLineInRegion):
(WebCore::RenderBlock::startOffsetForLineInRegion):
(WebCore::RenderBlock::endOffsetForLineInRegion):
(WebCore::RenderBlock::availableLogicalWidthForLine):
(WebCore::RenderBlock::logicalRightOffsetForLine):
(WebCore::RenderBlock::logicalLeftOffsetForLine):
(WebCore::RenderBlock::startOffsetForLine):
(WebCore::RenderBlock::endOffsetForLine):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::getClearDelta):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::updateLogicalInlinePositions):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::deleteEllipsisLineBoxes):
(WebCore::RenderBlockFlow::checkLinesForTextOverflow):
(WebCore::RenderBlockFlow::startAlignedOffsetForLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
(WebCore::RenderBox::containingBlockAvailableLineWidthInRegion):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::positionListMarker):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::selectionTop):
(WebCore::RootInlineBox::selectionBottom):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForWithReason):
(WebCore::SimpleLineLayout::updateLineConstrains):
* rendering/line/LineBreaker.cpp:
(WebCore::LineBreaker::skipLeadingWhitespace):
* rendering/line/LineWidth.cpp:
(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
(WebCore::availableWidthAtOffset):
* rendering/line/LineWidth.h:
(WebCore::LineWidth::shouldIndentText):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockcpp">trunk/Source/WebCore/rendering/RenderBlock.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockh">trunk/Source/WebCore/rendering/RenderBlock.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockFlowcpp">trunk/Source/WebCore/rendering/RenderBlockFlow.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockLineLayoutcpp">trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxcpp">trunk/Source/WebCore/rendering/RenderBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderDeprecatedFlexibleBoxcpp">trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderListItemcpp">trunk/Source/WebCore/rendering/RenderListItem.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRootInlineBoxcpp">trunk/Source/WebCore/rendering/RootInlineBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingSimpleLineLayoutcpp">trunk/Source/WebCore/rendering/SimpleLineLayout.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderinglineLineBreakercpp">trunk/Source/WebCore/rendering/line/LineBreaker.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderinglineLineWidthcpp">trunk/Source/WebCore/rendering/line/LineWidth.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderinglineLineWidthh">trunk/Source/WebCore/rendering/line/LineWidth.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/ChangeLog        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -1,3 +1,56 @@
</span><ins>+2016-03-02  Zalan Bujtas  &lt;zalan@apple.com&gt;
+
+        Use IndentTextOrNot instead of passing isFirstLine/shouldIndentText as bool.
+        https://bugs.webkit.org/show_bug.cgi?id=154628
+
+        Reviewed by Simon Fraser.
+
+        No change in behaviour.
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
+        (WebCore::RenderBlock::logicalLeftSelectionOffset):
+        (WebCore::RenderBlock::logicalRightSelectionOffset):
+        * rendering/RenderBlock.h:
+        (WebCore::RenderBlock::availableLogicalWidthForLineInRegion):
+        (WebCore::RenderBlock::logicalRightOffsetForLineInRegion):
+        (WebCore::RenderBlock::logicalLeftOffsetForLineInRegion):
+        (WebCore::RenderBlock::startOffsetForLineInRegion):
+        (WebCore::RenderBlock::endOffsetForLineInRegion):
+        (WebCore::RenderBlock::availableLogicalWidthForLine):
+        (WebCore::RenderBlock::logicalRightOffsetForLine):
+        (WebCore::RenderBlock::logicalLeftOffsetForLine):
+        (WebCore::RenderBlock::startOffsetForLine):
+        (WebCore::RenderBlock::endOffsetForLine):
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::getClearDelta):
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::updateLogicalInlinePositions):
+        (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
+        (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes):
+        (WebCore::RenderBlockFlow::checkLinesForTextOverflow):
+        (WebCore::RenderBlockFlow::startAlignedOffsetForLine):
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
+        (WebCore::RenderBox::containingBlockAvailableLineWidthInRegion):
+        * rendering/RenderDeprecatedFlexibleBox.cpp:
+        (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
+        * rendering/RenderListItem.cpp:
+        (WebCore::RenderListItem::positionListMarker):
+        * rendering/RootInlineBox.cpp:
+        (WebCore::RootInlineBox::selectionTop):
+        (WebCore::RootInlineBox::selectionBottom):
+        * rendering/SimpleLineLayout.cpp:
+        (WebCore::SimpleLineLayout::canUseForWithReason):
+        (WebCore::SimpleLineLayout::updateLineConstrains):
+        * rendering/line/LineBreaker.cpp:
+        (WebCore::LineBreaker::skipLeadingWhitespace):
+        * rendering/line/LineWidth.cpp:
+        (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
+        (WebCore::availableWidthAtOffset):
+        * rendering/line/LineWidth.h:
+        (WebCore::LineWidth::shouldIndentText):
+
</ins><span class="cx"> 2016-03-02  Beth Dakin  &lt;bdakin@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Add support for playbackControlsManager
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlock.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -1097,7 +1097,7 @@
</span><span class="cx">     if (region)
</span><span class="cx">         blockOffset = std::max(blockOffset, blockOffset + (region-&gt;logicalTopForFlowThreadContent() - offsetFromLogicalTopOfFirstPage()));
</span><span class="cx"> 
</span><del>-    LayoutUnit startOff = startOffsetForLineInRegion(blockOffset, false, region, logicalHeightForChild(child));
</del><ins>+    LayoutUnit startOff = startOffsetForLineInRegion(blockOffset, DoNotIndentText, region, logicalHeightForChild(child));
</ins><span class="cx"> 
</span><span class="cx">     if (style().textAlign() != WEBKIT_CENTER &amp;&amp; !child.style().marginStartUsing(&amp;style()).isAuto()) {
</span><span class="cx">         if (childMarginStart &lt; 0)
</span><span class="lines">@@ -2026,7 +2026,7 @@
</span><span class="cx"> 
</span><span class="cx"> LayoutUnit RenderBlock::logicalLeftSelectionOffset(RenderBlock&amp; rootBlock, LayoutUnit position, const LogicalSelectionOffsetCaches&amp; cache)
</span><span class="cx"> {
</span><del>-    LayoutUnit logicalLeft = logicalLeftOffsetForLine(position, false);
</del><ins>+    LayoutUnit logicalLeft = logicalLeftOffsetForLine(position, DoNotIndentText);
</ins><span class="cx">     if (logicalLeft == logicalLeftOffsetForContent()) {
</span><span class="cx">         if (&amp;rootBlock != this) // The border can potentially be further extended by our containingBlock().
</span><span class="cx">             return cache.containingBlockInfo(*this).logicalLeftSelectionOffset(rootBlock, position + logicalTop());
</span><span class="lines">@@ -2048,7 +2048,7 @@
</span><span class="cx"> 
</span><span class="cx"> LayoutUnit RenderBlock::logicalRightSelectionOffset(RenderBlock&amp; rootBlock, LayoutUnit position, const LogicalSelectionOffsetCaches&amp; cache)
</span><span class="cx"> {
</span><del>-    LayoutUnit logicalRight = logicalRightOffsetForLine(position, false);
</del><ins>+    LayoutUnit logicalRight = logicalRightOffsetForLine(position, DoNotIndentText);
</ins><span class="cx">     if (logicalRight == logicalRightOffsetForContent()) {
</span><span class="cx">         if (&amp;rootBlock != this) // The border can potentially be further extended by our containingBlock().
</span><span class="cx">             return cache.containingBlockInfo(*this).logicalRightSelectionOffset(rootBlock, position + logicalTop());
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlock.h (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlock.h        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderBlock.h        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -24,6 +24,7 @@
</span><span class="cx"> #define RenderBlock_h
</span><span class="cx"> 
</span><span class="cx"> #include &quot;GapRects.h&quot;
</span><ins>+#include &quot;LineWidth.h&quot;
</ins><span class="cx"> #include &quot;RenderBox.h&quot;
</span><span class="cx"> #include &quot;TextRun.h&quot;
</span><span class="cx"> #include &lt;memory&gt;
</span><span class="lines">@@ -121,48 +122,48 @@
</span><span class="cx"> 
</span><span class="cx">     // Versions that can compute line offsets with the region and page offset passed in. Used for speed to avoid having to
</span><span class="cx">     // compute the region all over again when you already know it.
</span><del>-    LayoutUnit availableLogicalWidthForLineInRegion(LayoutUnit position, bool shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit availableLogicalWidthForLineInRegion(LayoutUnit position, IndentTextOrNot shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return std::max&lt;LayoutUnit&gt;(0, logicalRightOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight)
</span><span class="cx">             - logicalLeftOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight));
</span><span class="cx">     }
</span><del>-    LayoutUnit logicalRightOffsetForLineInRegion(LayoutUnit position, bool shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const 
</del><ins>+    LayoutUnit logicalRightOffsetForLineInRegion(LayoutUnit position, IndentTextOrNot shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return logicalRightOffsetForLine(position, logicalRightOffsetForContent(region), shouldIndentText, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit logicalLeftOffsetForLineInRegion(LayoutUnit position, bool shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const 
</del><ins>+    LayoutUnit logicalLeftOffsetForLineInRegion(LayoutUnit position, IndentTextOrNot shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return logicalLeftOffsetForLine(position, logicalLeftOffsetForContent(region), shouldIndentText, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit startOffsetForLineInRegion(LayoutUnit position, bool shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit startOffsetForLineInRegion(LayoutUnit position, IndentTextOrNot shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return style().isLeftToRightDirection() ? logicalLeftOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight)
</span><span class="cx">             : logicalWidth() - logicalRightOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit endOffsetForLineInRegion(LayoutUnit position, bool shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit endOffsetForLineInRegion(LayoutUnit position, IndentTextOrNot shouldIndentText, RenderRegion* region, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return !style().isLeftToRightDirection() ? logicalLeftOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight)
</span><span class="cx">             : logicalWidth() - logicalRightOffsetForLineInRegion(position, shouldIndentText, region, logicalHeight);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    LayoutUnit availableLogicalWidthForLine(LayoutUnit position, bool shouldIndentText, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit availableLogicalWidthForLine(LayoutUnit position, IndentTextOrNot shouldIndentText, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return availableLogicalWidthForLineInRegion(position, shouldIndentText, regionAtBlockOffset(position), logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit logicalRightOffsetForLine(LayoutUnit position, bool shouldIndentText, LayoutUnit logicalHeight = 0) const 
</del><ins>+    LayoutUnit logicalRightOffsetForLine(LayoutUnit position, IndentTextOrNot shouldIndentText, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return logicalRightOffsetForLine(position, logicalRightOffsetForContent(position), shouldIndentText, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit logicalLeftOffsetForLine(LayoutUnit position, bool shouldIndentText, LayoutUnit logicalHeight = 0) const 
</del><ins>+    LayoutUnit logicalLeftOffsetForLine(LayoutUnit position, IndentTextOrNot shouldIndentText, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return logicalLeftOffsetForLine(position, logicalLeftOffsetForContent(position), shouldIndentText, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit startOffsetForLine(LayoutUnit position, bool shouldIndentText, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit startOffsetForLine(LayoutUnit position, IndentTextOrNot shouldIndentText, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return style().isLeftToRightDirection() ? logicalLeftOffsetForLine(position, shouldIndentText, logicalHeight)
</span><span class="cx">             : logicalWidth() - logicalRightOffsetForLine(position, shouldIndentText, logicalHeight);
</span><span class="cx">     }
</span><del>-    LayoutUnit endOffsetForLine(LayoutUnit position, bool shouldIndentText, LayoutUnit logicalHeight = 0) const
</del><ins>+    LayoutUnit endOffsetForLine(LayoutUnit position, IndentTextOrNot shouldIndentText, LayoutUnit logicalHeight = 0) const
</ins><span class="cx">     {
</span><span class="cx">         return !style().isLeftToRightDirection() ? logicalLeftOffsetForLine(position, shouldIndentText, logicalHeight)
</span><span class="cx">             : logicalWidth() - logicalRightOffsetForLine(position, shouldIndentText, logicalHeight);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockFlowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlockFlow.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -2844,7 +2844,7 @@
</span><span class="cx">     if (!result &amp;&amp; child.avoidsFloats()) {
</span><span class="cx">         LayoutUnit newLogicalTop = logicalTop;
</span><span class="cx">         while (true) {
</span><del>-            LayoutUnit availableLogicalWidthAtNewLogicalTopOffset = availableLogicalWidthForLine(newLogicalTop, false, logicalHeightForChild(child));
</del><ins>+            LayoutUnit availableLogicalWidthAtNewLogicalTopOffset = availableLogicalWidthForLine(newLogicalTop, DoNotIndentText, logicalHeightForChild(child));
</ins><span class="cx">             if (availableLogicalWidthAtNewLogicalTopOffset == availableLogicalWidthForContent(newLogicalTop))
</span><span class="cx">                 return newLogicalTop - logicalTop;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockLineLayoutcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -672,16 +672,16 @@
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-static void updateLogicalInlinePositions(RenderBlockFlow&amp; block, float&amp; lineLogicalLeft, float&amp; lineLogicalRight, float&amp; availableLogicalWidth, bool firstLine, IndentTextOrNot shouldIndentText, LayoutUnit boxLogicalHeight,
-    RootInlineBox* rootBox)
</del><ins>+static void updateLogicalInlinePositions(RenderBlockFlow&amp; block, float&amp; lineLogicalLeft, float&amp; lineLogicalRight, float&amp; availableLogicalWidth, bool firstLine,
+    IndentTextOrNot shouldIndentText, LayoutUnit boxLogicalHeight, RootInlineBox* rootBox)
</ins><span class="cx"> {
</span><span class="cx">     LayoutUnit lineLogicalHeight = block.minLineHeightForReplacedRenderer(firstLine, boxLogicalHeight);
</span><span class="cx">     if (rootBox-&gt;hasAnonymousInlineBlock()) {
</span><span class="cx">         lineLogicalLeft = block.logicalLeftOffsetForContent(block.logicalHeight());
</span><span class="cx">         lineLogicalRight = block.logicalRightOffsetForContent(block.logicalHeight());
</span><span class="cx">     } else {
</span><del>-        lineLogicalLeft = block.logicalLeftOffsetForLine(block.logicalHeight(), shouldIndentText == IndentText, lineLogicalHeight);
-        lineLogicalRight = block.logicalRightOffsetForLine(block.logicalHeight(), shouldIndentText == IndentText, lineLogicalHeight);
</del><ins>+        lineLogicalLeft = block.logicalLeftOffsetForLine(block.logicalHeight(), shouldIndentText, lineLogicalHeight);
+        lineLogicalRight = block.logicalRightOffsetForLine(block.logicalHeight(), shouldIndentText, lineLogicalHeight);
</ins><span class="cx">     }
</span><span class="cx">     availableLogicalWidth = lineLogicalRight - lineLogicalLeft;
</span><span class="cx"> }
</span><span class="lines">@@ -1337,14 +1337,14 @@
</span><span class="cx"> 
</span><span class="cx">                 if (paginated)
</span><span class="cx">                     adjustLinePositionForPagination(lineBox, adjustment, overflowsRegion, layoutState.flowThread());
</span><del>-                
</del><span class="cx">                 if (adjustment) {
</span><del>-                    LayoutUnit oldLineWidth = availableLogicalWidthForLine(oldLogicalHeight, layoutState.lineInfo().isFirstLine());
</del><ins>+                    IndentTextOrNot shouldIndentText = layoutState.lineInfo().isFirstLine() ? IndentText : DoNotIndentText;
+                    LayoutUnit oldLineWidth = availableLogicalWidthForLine(oldLogicalHeight, shouldIndentText);
</ins><span class="cx">                     lineBox-&gt;adjustBlockDirectionPosition(adjustment);
</span><span class="cx">                     if (layoutState.usesRepaintBounds())
</span><span class="cx">                         layoutState.updateRepaintRangeFromBox(lineBox);
</span><span class="cx"> 
</span><del>-                    if (availableLogicalWidthForLine(oldLogicalHeight + adjustment, layoutState.lineInfo().isFirstLine()) != oldLineWidth) {
</del><ins>+                    if (availableLogicalWidthForLine(oldLogicalHeight + adjustment, shouldIndentText) != oldLineWidth) {
</ins><span class="cx">                         // We have to delete this line, remove all floats that got added, and let line layout re-run.
</span><span class="cx">                         lineBox-&gt;deleteLine();
</span><span class="cx">                         end = restartLayoutRunsAndFloatsInRange(oldLogicalHeight, oldLogicalHeight + adjustment, lastFloatFromPreviousLine, resolver, oldEnd);
</span><span class="lines">@@ -1998,14 +1998,14 @@
</span><span class="cx"> {
</span><span class="cx">     ETextAlign textAlign = style().textAlign();
</span><span class="cx">     bool ltr = style().isLeftToRightDirection();
</span><del>-    bool firstLine = true;
</del><ins>+    IndentTextOrNot shouldIndentText = IndentText;
</ins><span class="cx">     for (RootInlineBox* curr = firstRootBox(); curr; curr = curr-&gt;nextRootBox()) {
</span><span class="cx">         if (curr-&gt;hasEllipsisBox()) {
</span><span class="cx">             curr-&gt;clearTruncation();
</span><span class="cx"> 
</span><span class="cx">             // Shift the line back where it belongs if we cannot accomodate an ellipsis.
</span><del>-            float logicalLeft = logicalLeftOffsetForLine(curr-&gt;lineTop(), firstLine);
-            float availableLogicalWidth = logicalRightOffsetForLine(curr-&gt;lineTop(), false) - logicalLeft;
</del><ins>+            float logicalLeft = logicalLeftOffsetForLine(curr-&gt;lineTop(), shouldIndentText);
+            float availableLogicalWidth = logicalRightOffsetForLine(curr-&gt;lineTop(), DoNotIndentText) - logicalLeft;
</ins><span class="cx">             float totalLogicalWidth = curr-&gt;logicalWidth();
</span><span class="cx">             updateLogicalWidthForAlignment(textAlign, curr, 0, logicalLeft, totalLogicalWidth, availableLogicalWidth, 0);
</span><span class="cx"> 
</span><span class="lines">@@ -2014,7 +2014,7 @@
</span><span class="cx">             else
</span><span class="cx">                 curr-&gt;adjustLogicalPosition(-(curr-&gt;logicalLeft() - logicalLeft), 0);
</span><span class="cx">         }
</span><del>-        firstLine = false;
</del><ins>+        shouldIndentText = DoNotIndentText;
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2036,22 +2036,22 @@
</span><span class="cx">     ETextAlign textAlign = style().textAlign();
</span><span class="cx">     bool firstLine = true;
</span><span class="cx">     for (RootInlineBox* curr = firstRootBox(); curr; curr = curr-&gt;nextRootBox()) {
</span><del>-        LayoutUnit blockRightEdge = logicalRightOffsetForLine(curr-&gt;lineTop(), firstLine);
-        LayoutUnit blockLeftEdge = logicalLeftOffsetForLine(curr-&gt;lineTop(), firstLine);
</del><ins>+        IndentTextOrNot shouldIndentText = firstLine ? IndentText : DoNotIndentText;
+        LayoutUnit blockRightEdge = logicalRightOffsetForLine(curr-&gt;lineTop(), shouldIndentText);
+        LayoutUnit blockLeftEdge = logicalLeftOffsetForLine(curr-&gt;lineTop(), shouldIndentText);
</ins><span class="cx">         LayoutUnit lineBoxEdge = ltr ? curr-&gt;x() + curr-&gt;logicalWidth() : curr-&gt;x();
</span><span class="cx">         if ((ltr &amp;&amp; lineBoxEdge &gt; blockRightEdge) || (!ltr &amp;&amp; lineBoxEdge &lt; blockLeftEdge)) {
</span><span class="cx">             // This line spills out of our box in the appropriate direction.  Now we need to see if the line
</span><span class="cx">             // can be truncated.  In order for truncation to be possible, the line must have sufficient space to
</span><span class="cx">             // accommodate our truncation string, and no replaced elements (images, tables) can overlap the ellipsis
</span><span class="cx">             // space.
</span><del>-
</del><span class="cx">             LayoutUnit width = firstLine ? firstLineEllipsisWidth : ellipsisWidth;
</span><span class="cx">             LayoutUnit blockEdge = ltr ? blockRightEdge : blockLeftEdge;
</span><span class="cx">             if (curr-&gt;lineCanAccommodateEllipsis(ltr, blockEdge, lineBoxEdge, width)) {
</span><span class="cx">                 float totalLogicalWidth = curr-&gt;placeEllipsis(ellipsisStr, ltr, blockLeftEdge, blockRightEdge, width);
</span><span class="cx"> 
</span><span class="cx">                 float logicalLeft = 0; // We are only interested in the delta from the base position.
</span><del>-                float truncatedWidth = availableLogicalWidthForLine(curr-&gt;lineTop(), firstLine);
</del><ins>+                float truncatedWidth = availableLogicalWidthForLine(curr-&gt;lineTop(), shouldIndentText);
</ins><span class="cx">                 updateLogicalWidthForAlignment(textAlign, curr, nullptr, logicalLeft, totalLogicalWidth, truncatedWidth, 0);
</span><span class="cx">                 if (ltr)
</span><span class="cx">                     curr-&gt;adjustLogicalPosition(logicalLeft, 0);
</span><span class="lines">@@ -2143,12 +2143,12 @@
</span><span class="cx">     // This quirk is for legacy content that doesn't work properly with the center positioning scheme
</span><span class="cx">     // being honored (e.g., epubs).
</span><span class="cx">     if (shouldApplyIndentText || document().settings()-&gt;useLegacyTextAlignPositionedElementBehavior()) // FIXME: Handle TAEND here
</span><del>-        return startOffsetForLine(position, shouldIndentText == IndentText);
</del><ins>+        return startOffsetForLine(position, shouldIndentText);
</ins><span class="cx"> 
</span><span class="cx">     // updateLogicalWidthForAlignment() handles the direction of the block so no need to consider it here
</span><span class="cx">     float totalLogicalWidth = 0;
</span><del>-    float logicalLeft = logicalLeftOffsetForLine(logicalHeight(), false);
-    float availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), false) - logicalLeft;
</del><ins>+    float logicalLeft = logicalLeftOffsetForLine(logicalHeight(), DoNotIndentText);
+    float availableLogicalWidth = logicalRightOffsetForLine(logicalHeight(), DoNotIndentText) - logicalLeft;
</ins><span class="cx"> 
</span><span class="cx">     // FIXME: Bug 129311: We need to pass a valid RootInlineBox here, considering the bidi level used to construct the line.
</span><span class="cx">     updateLogicalWidthForAlignment(textAlign, 0, 0, logicalLeft, totalLogicalWidth, availableLogicalWidth, 0);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBox.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBox.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderBox.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -1868,7 +1868,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     LayoutUnit logicalHeight = cb-&gt;logicalHeightForChild(*this);
</span><del>-    LayoutUnit result = cb-&gt;availableLogicalWidthForLineInRegion(logicalTopPosition, false, containingBlockRegion, logicalHeight) - childMarginStart - childMarginEnd;
</del><ins>+    LayoutUnit result = cb-&gt;availableLogicalWidthForLineInRegion(logicalTopPosition, DoNotIndentText, containingBlockRegion, logicalHeight) - childMarginStart - childMarginEnd;
</ins><span class="cx"> 
</span><span class="cx">     // We need to see if margins on either the start side or the end side can contain the floats in question. If they can,
</span><span class="cx">     // then just using the line width is inaccurate. In the case where a float completely fits, we don't need to use the line
</span><span class="lines">@@ -1878,7 +1878,7 @@
</span><span class="cx">     if (childMarginStart &gt; 0) {
</span><span class="cx">         LayoutUnit startContentSide = cb-&gt;startOffsetForContent(containingBlockRegion);
</span><span class="cx">         LayoutUnit startContentSideWithMargin = startContentSide + childMarginStart;
</span><del>-        LayoutUnit startOffset = cb-&gt;startOffsetForLineInRegion(logicalTopPosition, false, containingBlockRegion, logicalHeight);
</del><ins>+        LayoutUnit startOffset = cb-&gt;startOffsetForLineInRegion(logicalTopPosition, DoNotIndentText, containingBlockRegion, logicalHeight);
</ins><span class="cx">         if (startOffset &gt; startContentSideWithMargin)
</span><span class="cx">             result += childMarginStart;
</span><span class="cx">         else
</span><span class="lines">@@ -1888,7 +1888,7 @@
</span><span class="cx">     if (childMarginEnd &gt; 0) {
</span><span class="cx">         LayoutUnit endContentSide = cb-&gt;endOffsetForContent(containingBlockRegion);
</span><span class="cx">         LayoutUnit endContentSideWithMargin = endContentSide + childMarginEnd;
</span><del>-        LayoutUnit endOffset = cb-&gt;endOffsetForLineInRegion(logicalTopPosition, false, containingBlockRegion, logicalHeight);
</del><ins>+        LayoutUnit endOffset = cb-&gt;endOffsetForLineInRegion(logicalTopPosition, DoNotIndentText, containingBlockRegion, logicalHeight);
</ins><span class="cx">         if (endOffset &gt; endContentSideWithMargin)
</span><span class="cx">             result += childMarginEnd;
</span><span class="cx">         else
</span><span class="lines">@@ -1952,7 +1952,7 @@
</span><span class="cx">         logicalTopPosition = std::max(logicalTopPosition, logicalTopPosition + offsetFromLogicalTopOfRegion);
</span><span class="cx">         containingBlockRegion = cb-&gt;clampToStartAndEndRegions(region);
</span><span class="cx">     }
</span><del>-    return cb-&gt;availableLogicalWidthForLineInRegion(logicalTopPosition, false, containingBlockRegion, availableLogicalHeight(IncludeMarginBorderPadding));
</del><ins>+    return cb-&gt;availableLogicalWidthForLineInRegion(logicalTopPosition, DoNotIndentText, containingBlockRegion, availableLogicalHeight(IncludeMarginBorderPadding));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> LayoutUnit RenderBox::perpendicularContainingBlockLogicalHeight() const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderDeprecatedFlexibleBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -1014,13 +1014,13 @@
</span><span class="cx">         if (!leftToRight)
</span><span class="cx">             continue;
</span><span class="cx"> 
</span><del>-        LayoutUnit blockRightEdge = destBlock.logicalRightOffsetForLine(lastVisibleLine-&gt;y(), false);
</del><ins>+        LayoutUnit blockRightEdge = destBlock.logicalRightOffsetForLine(lastVisibleLine-&gt;y(), DoNotIndentText);
</ins><span class="cx">         if (!lastVisibleLine-&gt;lineCanAccommodateEllipsis(leftToRight, blockRightEdge, lastVisibleLine-&gt;x() + lastVisibleLine-&gt;logicalWidth(), totalWidth))
</span><span class="cx">             continue;
</span><span class="cx"> 
</span><span class="cx">         // Let the truncation code kick in.
</span><span class="cx">         // FIXME: the text alignment should be recomputed after the width changes due to truncation.
</span><del>-        LayoutUnit blockLeftEdge = destBlock.logicalLeftOffsetForLine(lastVisibleLine-&gt;y(), false);
</del><ins>+        LayoutUnit blockLeftEdge = destBlock.logicalLeftOffsetForLine(lastVisibleLine-&gt;y(), DoNotIndentText);
</ins><span class="cx">         lastVisibleLine-&gt;placeEllipsis(anchorBox ? ellipsisAndSpaceStr : ellipsisStr, leftToRight, blockLeftEdge, blockRightEdge, totalWidth, anchorBox);
</span><span class="cx">         destBlock.setHasMarkupTruncation(true);
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderListItemcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderListItem.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderListItem.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RenderListItem.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -351,7 +351,7 @@
</span><span class="cx"> 
</span><span class="cx">         // FIXME: Need to account for relative positioning in the layout overflow.
</span><span class="cx">         if (style().isLeftToRightDirection()) {
</span><del>-            LayoutUnit leftLineOffset = logicalLeftOffsetForLine(blockOffset, logicalLeftOffsetForLine(blockOffset, false), false);
</del><ins>+            LayoutUnit leftLineOffset = logicalLeftOffsetForLine(blockOffset, logicalLeftOffsetForLine(blockOffset, DoNotIndentText), false);
</ins><span class="cx">             markerLogicalLeft = leftLineOffset - lineOffset - paddingStart() - borderStart() + m_marker-&gt;marginStart();
</span><span class="cx">             m_marker-&gt;inlineBoxWrapper()-&gt;adjustLineDirectionPosition(markerLogicalLeft - markerOldLogicalLeft);
</span><span class="cx">             for (InlineFlowBox* box = m_marker-&gt;inlineBoxWrapper()-&gt;parent(); box; box = box-&gt;parent()) {
</span><span class="lines">@@ -374,7 +374,7 @@
</span><span class="cx">                     hitSelfPaintingLayer = true;
</span><span class="cx">             }
</span><span class="cx">         } else {
</span><del>-            LayoutUnit rightLineOffset = logicalRightOffsetForLine(blockOffset, logicalRightOffsetForLine(blockOffset, false), false);
</del><ins>+            LayoutUnit rightLineOffset = logicalRightOffsetForLine(blockOffset, logicalRightOffsetForLine(blockOffset, DoNotIndentText), false);
</ins><span class="cx">             markerLogicalLeft = rightLineOffset - lineOffset + paddingStart() + borderStart() + m_marker-&gt;marginEnd();
</span><span class="cx">             m_marker-&gt;inlineBoxWrapper()-&gt;adjustLineDirectionPosition(markerLogicalLeft - markerOldLogicalLeft);
</span><span class="cx">             for (InlineFlowBox* box = m_marker-&gt;inlineBoxWrapper()-&gt;parent(); box; box = box-&gt;parent()) {
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRootInlineBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RootInlineBox.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RootInlineBox.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/RootInlineBox.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -635,10 +635,10 @@
</span><span class="cx">         // This line has actually been moved further down, probably from a large line-height, but possibly because the
</span><span class="cx">         // line was forced to clear floats.  If so, let's check the offsets, and only be willing to use the previous
</span><span class="cx">         // line's bottom if the offsets are greater on both sides.
</span><del>-        LayoutUnit prevLeft = blockFlow().logicalLeftOffsetForLine(prevBottom, false);
-        LayoutUnit prevRight = blockFlow().logicalRightOffsetForLine(prevBottom, false);
-        LayoutUnit newLeft = blockFlow().logicalLeftOffsetForLine(selectionTop, false);
-        LayoutUnit newRight = blockFlow().logicalRightOffsetForLine(selectionTop, false);
</del><ins>+        LayoutUnit prevLeft = blockFlow().logicalLeftOffsetForLine(prevBottom, DoNotIndentText);
+        LayoutUnit prevRight = blockFlow().logicalRightOffsetForLine(prevBottom, DoNotIndentText);
+        LayoutUnit newLeft = blockFlow().logicalLeftOffsetForLine(selectionTop, DoNotIndentText);
+        LayoutUnit newRight = blockFlow().logicalRightOffsetForLine(selectionTop, DoNotIndentText);
</ins><span class="cx">         if (prevLeft &gt; newLeft || prevRight &lt; newRight)
</span><span class="cx">             return selectionTop;
</span><span class="cx">     }
</span><span class="lines">@@ -718,10 +718,10 @@
</span><span class="cx">         // The next line has actually been moved further over, probably from a large line-height, but possibly because the
</span><span class="cx">         // line was forced to clear floats.  If so, let's check the offsets, and only be willing to use the next
</span><span class="cx">         // line's top if the offsets are greater on both sides.
</span><del>-        LayoutUnit nextLeft = blockFlow().logicalLeftOffsetForLine(nextTop, false);
-        LayoutUnit nextRight = blockFlow().logicalRightOffsetForLine(nextTop, false);
-        LayoutUnit newLeft = blockFlow().logicalLeftOffsetForLine(selectionBottom, false);
-        LayoutUnit newRight = blockFlow().logicalRightOffsetForLine(selectionBottom, false);
</del><ins>+        LayoutUnit nextLeft = blockFlow().logicalLeftOffsetForLine(nextTop, DoNotIndentText);
+        LayoutUnit nextRight = blockFlow().logicalRightOffsetForLine(nextTop, DoNotIndentText);
+        LayoutUnit newLeft = blockFlow().logicalLeftOffsetForLine(selectionBottom, DoNotIndentText);
+        LayoutUnit newRight = blockFlow().logicalRightOffsetForLine(selectionBottom, DoNotIndentText);
</ins><span class="cx">         if (nextLeft &gt; newLeft || nextRight &lt; newRight)
</span><span class="cx">             return selectionBottom;
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingSimpleLineLayoutcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/SimpleLineLayout.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/SimpleLineLayout.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/SimpleLineLayout.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -331,7 +331,7 @@
</span><span class="cx">                 if (floatingObject-&gt;renderer().shapeOutsideInfo())
</span><span class="cx">                     SET_REASON_AND_RETURN_IF_NEEDED(FlowHasUnsupportedFloat, reasons, includeReasons);
</span><span class="cx"> #endif
</span><del>-                float availableWidth = flow.availableLogicalWidthForLine(floatingObject-&gt;y(), false);
</del><ins>+                float availableWidth = flow.availableLogicalWidthForLine(floatingObject-&gt;y(), DoNotIndentText);
</ins><span class="cx">                 if (availableWidth &lt; minimumWidthNeeded)
</span><span class="cx">                     SET_REASON_AND_RETURN_IF_NEEDED(FlowHasUnsupportedFloat, reasons, includeReasons);
</span><span class="cx">             }
</span><span class="lines">@@ -568,8 +568,9 @@
</span><span class="cx">     bool shouldApplyTextIndent = !flow.isAnonymous() || flow.parent()-&gt;firstChild() == &amp;flow;
</span><span class="cx">     LayoutUnit height = flow.logicalHeight();
</span><span class="cx">     LayoutUnit logicalHeight = flow.minLineHeightForReplacedRenderer(false, 0);
</span><del>-    float logicalRightOffset = flow.logicalRightOffsetForLine(height, false, logicalHeight);
-    line.setLogicalLeftOffset(flow.logicalLeftOffsetForLine(height, false, logicalHeight) + (shouldApplyTextIndent &amp;&amp; isFirstLine ? flow.textIndentOffset() : LayoutUnit(0)));
</del><ins>+    float logicalRightOffset = flow.logicalRightOffsetForLine(height, DoNotIndentText, logicalHeight);
+    line.setLogicalLeftOffset(flow.logicalLeftOffsetForLine(height, DoNotIndentText, logicalHeight) +
+        (shouldApplyTextIndent &amp;&amp; isFirstLine ? flow.textIndentOffset() : LayoutUnit(0)));
</ins><span class="cx">     line.setAvailableWidth(std::max&lt;float&gt;(0, logicalRightOffset - line.logicalLeftOffset()));
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorerenderinglineLineBreakercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/line/LineBreaker.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/line/LineBreaker.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/line/LineBreaker.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -60,7 +60,7 @@
</span><span class="cx">     while (!resolver.position().atEnd() &amp;&amp; !requiresLineBox(resolver.position(), lineInfo, LeadingWhitespace)) {
</span><span class="cx">         RenderObject&amp; object = *resolver.position().renderer();
</span><span class="cx">         if (object.isOutOfFlowPositioned()) {
</span><del>-            setStaticPositions(m_block, downcast&lt;RenderBox&gt;(object), width.shouldIndentText() ? IndentText : DoNotIndentText);
</del><ins>+            setStaticPositions(m_block, downcast&lt;RenderBox&gt;(object), width.shouldIndentText());
</ins><span class="cx">             if (object.style().isOriginalDisplayInlineType()) {
</span><span class="cx">                 resolver.runs().addRun(new BidiRun(0, 1, object, resolver.context(), resolver.dir()));
</span><span class="cx">                 lineInfo.incrementRunsFromLeadingWhitespace();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderinglineLineWidthcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/line/LineWidth.cpp (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/line/LineWidth.cpp        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/line/LineWidth.cpp        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -103,7 +103,7 @@
</span><span class="cx"> 
</span><span class="cx">     if (newFloat.type() == FloatingObject::FloatLeft) {
</span><span class="cx">         float newLeft = m_block.logicalRightForFloat(newFloat);
</span><del>-        if (shouldIndentText() &amp;&amp; m_block.style().isLeftToRightDirection())
</del><ins>+        if (shouldIndentText() == IndentText &amp;&amp; m_block.style().isLeftToRightDirection())
</ins><span class="cx">             newLeft += floorToInt(m_block.textIndentOffset());
</span><span class="cx"> #if ENABLE(CSS_SHAPES)
</span><span class="cx">         if (shapeDeltas.isValid()) {
</span><span class="lines">@@ -116,7 +116,7 @@
</span><span class="cx">         m_left = std::max&lt;float&gt;(m_left, newLeft);
</span><span class="cx">     } else {
</span><span class="cx">         float newRight = m_block.logicalLeftForFloat(newFloat);
</span><del>-        if (shouldIndentText() &amp;&amp; !m_block.style().isLeftToRightDirection())
</del><ins>+        if (shouldIndentText() == IndentText &amp;&amp; !m_block.style().isLeftToRightDirection())
</ins><span class="cx">             newRight -= floorToInt(m_block.textIndentOffset());
</span><span class="cx"> #if ENABLE(CSS_SHAPES)
</span><span class="cx">         if (shapeDeltas.isValid()) {
</span><span class="lines">@@ -156,7 +156,8 @@
</span><span class="cx">     m_overhangWidth += startOverhang + endOverhang;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline static float availableWidthAtOffset(const RenderBlockFlow&amp; block, const LayoutUnit&amp; offset, bool shouldIndentText, float&amp; newLineLeft, float&amp; newLineRight, const LayoutUnit&amp; lineHeight = 0)
</del><ins>+inline static float availableWidthAtOffset(const RenderBlockFlow&amp; block, const LayoutUnit&amp; offset, IndentTextOrNot shouldIndentText,
+    float&amp; newLineLeft, float&amp; newLineRight, const LayoutUnit&amp; lineHeight = 0)
</ins><span class="cx"> {
</span><span class="cx">     newLineLeft = block.logicalLeftOffsetForLine(offset, shouldIndentText, lineHeight);
</span><span class="cx">     newLineRight = block.logicalRightOffsetForLine(offset, shouldIndentText, lineHeight);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderinglineLineWidthh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/line/LineWidth.h (197461 => 197462)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/line/LineWidth.h        2016-03-02 20:59:28 UTC (rev 197461)
+++ trunk/Source/WebCore/rendering/line/LineWidth.h        2016-03-02 21:42:22 UTC (rev 197462)
</span><span class="lines">@@ -76,7 +76,7 @@
</span><span class="cx">     void applyOverhang(RenderRubyRun*, RenderObject* startRenderer, RenderObject* endRenderer);
</span><span class="cx">     void fitBelowFloats(bool isFirstLine = false);
</span><span class="cx">     void setTrailingWhitespaceWidth(float collapsedWhitespace, float borderPaddingMargin = 0);
</span><del>-    bool shouldIndentText() const { return m_shouldIndentText == IndentText; }
</del><ins>+    IndentTextOrNot shouldIndentText() const { return m_shouldIndentText; }
</ins><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     void computeAvailableWidthFromLeftAndRight();
</span></span></pre>
</div>
</div>

</body>
</html>