| Index: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| index 8872d9016e7e66048e593dad232b9c7db6ef8038..27eeefd666ba7f375958fa9fcd9d04d9a717cba0 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| @@ -1143,8 +1143,7 @@ void LayoutBlockFlow::layoutBlockChildren(bool relayoutChildren, SubtreeLayoutSc
|
| BlockChildrenLayoutInfo layoutInfo(this, beforeEdge, afterEdge);
|
| MarginInfo& marginInfo = layoutInfo.marginInfo();
|
|
|
| - // Fieldsets need to find their legend and position it inside the border of the object.
|
| - // The legend then gets skipped during normal layout. The same is true for ruby text.
|
| + // Ruby text needs to find their legend and position it inside the border of the object.
|
| // It doesn't get included in the normal layout process but is instead skipped.
|
| LayoutObject* childToExclude = layoutSpecialExcludedChild(relayoutChildren, layoutScope);
|
|
|
| @@ -1158,7 +1157,7 @@ void LayoutBlockFlow::layoutBlockChildren(bool relayoutChildren, SubtreeLayoutSc
|
| child->setMayNeedPaintInvalidation();
|
|
|
| if (childToExclude == child)
|
| - continue; // Skip this child, since it will be positioned by the specialized subclass (fieldsets and ruby runs).
|
| + continue; // Skip this child, since it will be positioned by the specialized subclass (ruby runs).
|
|
|
| updateBlockChildDirtyBitsBeforeLayout(relayoutChildren, *child);
|
|
|
| @@ -2397,7 +2396,7 @@ void LayoutBlockFlow::addChild(LayoutObject* newChild, LayoutObject* beforeChild
|
| // that isn't sufficient for us, and can only cause trouble at this point.
|
| LayoutBox::addChild(newChild, beforeChild);
|
|
|
| - if (madeBoxesNonInline && parent() && isAnonymousBlock() && parent()->isLayoutBlock()) {
|
| + if (madeBoxesNonInline && parent() && isAnonymousBlock() && parent()->isLayoutBlock() && !parent()->createsAnonymousWrapper()) {
|
| toLayoutBlock(parent())->removeLeftoverAnonymousBlock(this);
|
| // |this| may be dead now.
|
| }
|
| @@ -3523,11 +3522,6 @@ void LayoutBlockFlow::createOrDestroyMultiColumnFlowThreadIfNeeded(const Compute
|
| if (isRuby())
|
| return;
|
|
|
| - // Fieldsets look for a legend special child (layoutSpecialExcludedChild()). We currently only
|
| - // support one special child per layout object, and the flow thread would make for a second one.
|
| - if (isFieldset())
|
| - return;
|
| -
|
| // Form controls are replaced content, and are therefore not supposed to support multicol.
|
| if (isFileUploadControl() || isTextControl() || isListBox())
|
| return;
|
|
|