flutter_flutter/engine/core/rendering/RenderParagraph.cpp
Ojan Vafai 7a37fa8c09 First step at getting rid of anonymous blocks and continuations.
-Add RenderParagraph and display:paragraph. This is the only
render type that's allowed to contain inlines or text.
-If you put text nodes directly in a non-paragraph, wrap them
in an anonymous paragraph. This may not be the place we want
to end up, but it's a good stopgap to make it so we don't
crash in this case.
-Make StyleAdjuster force that non-paragraph blocks only contain
RenderBlock subclasses and that paragraphs and inlines only contain
inlines.
-Considerably simplify addChildIgnoringAnonymousColumnBlocks
now that we only create anonymous blocks for the case of
text nodes in non-paragraphs. Also get rid of the behavior
where we try to group multiple nodes into a single
anonymous block.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/729693003
2014-11-17 18:39:52 -08:00

28 lines
630 B
C++

// 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/RenderParagraph.h"
namespace blink {
RenderParagraph::RenderParagraph(ContainerNode* node)
: RenderBlockFlow(node)
{
setChildrenInline(true);
}
RenderParagraph::~RenderParagraph()
{
}
RenderParagraph* RenderParagraph::createAnonymous(Document& document)
{
RenderParagraph* renderer = new RenderParagraph(0);
renderer->setDocumentForAnonymous(&document);
return renderer;
}
} // namespace blink