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

Unified Diff: third_party/WebKit/Source/core/layout/ng/ng_block_node.h

Issue 2921463004: [LayoutNG] PODify NGLayoutInputNode and sub-classes. (Closed)
Patch Set: new ng-bot expectations Created 3 years, 6 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
Index: third_party/WebKit/Source/core/layout/ng/ng_block_node.h
diff --git a/third_party/WebKit/Source/core/layout/ng/ng_block_node.h b/third_party/WebKit/Source/core/layout/ng/ng_block_node.h
index 7a0836898c6855ff43905fb954351aeb706ad00b..8abc2b6b6e35d90de4067281ad3cb8d4e3254739 100644
--- a/third_party/WebKit/Source/core/layout/ng/ng_block_node.h
+++ b/third_party/WebKit/Source/core/layout/ng/ng_block_node.h
@@ -13,7 +13,6 @@
namespace blink {
-class ComputedStyle;
class LayoutObject;
class NGBreakToken;
class NGConstraintSpace;
@@ -24,16 +23,12 @@ struct MinMaxContentSize;
// Represents a node to be laid out.
class CORE_EXPORT NGBlockNode final : public NGLayoutInputNode {
friend NGLayoutInputNode;
-
public:
- explicit NGBlockNode(LayoutObject*);
-
- ~NGBlockNode() override;
+ explicit NGBlockNode(LayoutBox*);
RefPtr<NGLayoutResult> Layout(NGConstraintSpace* constraint_space,
- NGBreakToken* break_token = nullptr) override;
- NGLayoutInputNode* NextSibling() override;
- LayoutObject* GetLayoutObject() const override;
+ NGBreakToken* break_token = nullptr);
+ NGLayoutInputNode NextSibling() const;
// Computes the value of min-content and max-content for this box.
// If the underlying layout algorithm's ComputeMinMaxContentSize returns
@@ -41,16 +36,12 @@ class CORE_EXPORT NGBlockNode final : public NGLayoutInputNode {
// special constraint spaces -- infinite available size for max content, zero
// available size for min content, and percentage resolution size zero for
// both.
- MinMaxContentSize ComputeMinMaxContentSize() override;
-
- const ComputedStyle& Style() const override;
+ MinMaxContentSize ComputeMinMaxContentSize();
- NGLayoutInputNode* FirstChild();
+ NGLayoutInputNode FirstChild();
- DECLARE_VIRTUAL_TRACE();
-
- // Runs layout on layout_box_ and creates a fragment for the resulting
- // geometry.
+ // Runs layout on the underlying LayoutObject and creates a fragment for the
+ // resulting geometry.
RefPtr<NGLayoutResult> RunOldLayout(const NGConstraintSpace&);
// Called if this is an out-of-flow block which needs to be
@@ -62,18 +53,12 @@ class CORE_EXPORT NGBlockNode final : public NGLayoutInputNode {
bool CanUseNewLayout() const;
- String ToString() const override;
+ String ToString() const;
private:
// After we run the layout algorithm, this function copies back the geometry
// data to the layout box.
void CopyFragmentDataToLayoutBox(const NGConstraintSpace&, NGLayoutResult*);
-
- // We can either wrap a layout_box_ or a next_sibling_/first_child_
- // combination.
- LayoutBox* layout_box_;
- Member<NGLayoutInputNode> next_sibling_;
- Member<NGLayoutInputNode> first_child_;
};
DEFINE_TYPE_CASTS(NGBlockNode,

Powered by Google App Engine
This is Rietveld 408576698