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

Unified Diff: third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp

Issue 1933633002: Remove replacedChildren vector from inline layout. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
index ec62c97eecfe87692ead5f08ab49bd496f63c7ef..c365ecd78c45d20401c654a78d66f08aa4be41c1 100644
--- a/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
+++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
@@ -1568,12 +1568,6 @@ void LayoutBlockFlow::layoutInlineChildren(bool relayoutChildren, LayoutUnit& pa
deleteEllipsisLineBoxes();
if (firstChild()) {
- // In full layout mode, clear the line boxes of children upfront. Otherwise,
- // siblings can run into stale root lineboxes during layout. Then layout
- // the replaced elements later. In partial layout mode, line boxes are not
- // deleted and only dirtied. In that case, we can layout the replaced
- // elements at the same time.
- Vector<LayoutBox*> replacedChildren;
for (InlineWalker walker(LineLayoutBlockFlow(this)); !walker.atEnd(); walker.advance()) {
LayoutObject* o = walker.current().layoutObject();
@@ -1594,12 +1588,9 @@ void LayoutBlockFlow::layoutInlineChildren(bool relayoutChildren, LayoutUnit& pa
markLinesDirtyInBlockRange(toLayoutBox(o)->logicalTop(), toLayoutBox(o)->logicalBottom());
}
} else if (isFullLayout || o->needsLayout()) {
- // Replaced element.
+ // Atomic inline.
box->dirtyLineBoxes(isFullLayout);
- if (isFullLayout)
- replacedChildren.append(box);
- else
- o->layoutIfNeeded();
+ o->layoutIfNeeded();
}
} else if (o->isText() || (o->isLayoutInline() && !walker.atEndOfInline())) {
if (!o->isText())
@@ -1613,9 +1604,6 @@ void LayoutBlockFlow::layoutInlineChildren(bool relayoutChildren, LayoutUnit& pa
setContainsInlineWithOutlineAndContinuation(true);
}
- for (size_t i = 0; i < replacedChildren.size(); i++)
- replacedChildren[i]->layoutIfNeeded();
-
layoutRunsAndFloats(layoutState);
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698