| Index: third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| diff --git a/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc b/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| index a22cbda1f39230492c9c7a24ee14995ec2a683d0..8a8ebddd710ef895376464696352e78a333babda 100644
|
| --- a/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| +++ b/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
|
| @@ -5,6 +5,8 @@
|
| #include "core/layout/ng/ng_block_node.h"
|
|
|
| #include "core/layout/LayoutBlockFlow.h"
|
| +#include "core/layout/LayoutMultiColumnFlowThread.h"
|
| +#include "core/layout/LayoutMultiColumnSet.h"
|
| #include "core/layout/api/LineLayoutAPIShim.h"
|
| #include "core/layout/line/InlineIterator.h"
|
| #include "core/layout/ng/layout_ng_block_flow.h"
|
| @@ -238,6 +240,24 @@ void NGBlockNode::CopyFragmentDataToLayoutBox(
|
| NGPhysicalBoxFragment* fragment =
|
| toNGPhysicalBoxFragment(layout_result->PhysicalFragment().get());
|
|
|
| + if (layout_box_->style()->specifiesColumns()) {
|
| + LayoutBlockFlow* multicolContainer = toLayoutBlockFlow(layout_box_);
|
| + LayoutMultiColumnFlowThread* flow_thread =
|
| + multicolContainer->multiColumnFlowThread();
|
| + if (!flow_thread) {
|
| + flow_thread = LayoutMultiColumnFlowThread::createAnonymous(
|
| + layout_box_->document(), *layout_box_->style());
|
| + multicolContainer->addChild(flow_thread);
|
| + flow_thread->populate();
|
| + multicolContainer->ensureRareData().m_multiColumnFlowThread = flow_thread;
|
| + }
|
| +
|
| + flow_thread->firstMultiColumnSet()->setWidth(fragment->Width());
|
| + flow_thread->firstMultiColumnSet()->setHeight(fragment->Height());
|
| + flow_thread->firstMultiColumnSet()->clearNeedsLayout();
|
| + flow_thread->validateColumnSets();
|
| + flow_thread->clearNeedsLayout();
|
| + }
|
| layout_box_->setWidth(fragment->Width());
|
| layout_box_->setHeight(fragment->Height());
|
| NGBoxStrut border_and_padding = ComputeBorders(constraint_space, Style()) +
|
|
|