blob: 1e5fd08f22b8cf4d954c52d236f927675de3c786 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "config.h"
#include "core/rendering/RenderPagedFlowThread.h"
namespace blink {
RenderPagedFlowThread* RenderPagedFlowThread::createAnonymous(Document& document, RenderStyle* parentStyle)
{
RenderPagedFlowThread* renderer = new RenderPagedFlowThread();
renderer->setDocumentForAnonymous(&document);
renderer->setStyle(RenderStyle::createAnonymousStyleWithDisplay(parentStyle, BLOCK));
return renderer;
}
const char* RenderPagedFlowThread::renderName() const
{
return "RenderPagedFlowThread";
}
bool RenderPagedFlowThread::needsNewWidth() const
{
return progressionIsInline() != pagedBlockFlow()->style()->hasInlinePaginationAxis();
}
void RenderPagedFlowThread::updateLogicalWidth()
{
// As long as we inherit from RenderMultiColumnFlowThread, we need to bypass its implementation
// here. We're not split into columns, so the flow thread width will just be whatever is
// available in the containing block.
RenderFlowThread::updateLogicalWidth();
}
void RenderPagedFlowThread::layout()
{
setProgressionIsInline(pagedBlockFlow()->style()->hasInlinePaginationAxis());
RenderMultiColumnFlowThread::layout();
}
} // namespace blink