Commit 0d92437a authored by Koji Ishii's avatar Koji Ishii Committed by Commit Bot

Take NGLogicalLineItems out of NGInlineLayoutAlgorithm

This patch takes |NGLogicalLineItems| out of
|NGInlineLayoutAlgorithm| member field, but instead passed
as arguments.

This patch is to prepare supporting multiple instances of
|NGLogicalLineItems| for CSS Layout API.

This patch has no behavior changes.

Bug: 726125
Change-Id: I48642ab3dede8fa475c82d026b4ffdec77450d2d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2331775
Auto-Submit: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: default avatarIan Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#793755}
parent 261f2ba3
......@@ -47,6 +47,7 @@ class CORE_EXPORT NGInlineLayoutAlgorithm final
void CreateLine(const NGLineLayoutOpportunity&,
NGLineInfo*,
NGLogicalLineItems* line_box,
NGExclusionSpace*);
scoped_refptr<const NGLayoutResult> Layout() override;
......@@ -78,29 +79,37 @@ class CORE_EXPORT NGInlineLayoutAlgorithm final
NGInlineLayoutStateStack*) const;
NGInlineBoxState* HandleCloseTag(const NGInlineItem&,
const NGInlineItemResult&,
NGLogicalLineItems* line_box,
NGInlineBoxState*);
void BidiReorder(TextDirection base_direction);
void BidiReorder(TextDirection base_direction, NGLogicalLineItems* line_box);
void PlaceControlItem(const NGInlineItem&,
const NGLineInfo&,
NGInlineItemResult*,
NGLogicalLineItems* line_box,
NGInlineBoxState*);
void PlaceHyphen(const NGInlineItemResult&,
LayoutUnit hyphen_inline_size,
NGLogicalLineItems* line_box,
NGInlineBoxState*);
NGInlineBoxState* PlaceAtomicInline(const NGInlineItem&,
const NGLineInfo&,
NGInlineItemResult*);
NGInlineItemResult*,
NGLogicalLineItems* line_box);
void PlaceLayoutResult(NGInlineItemResult*,
NGLogicalLineItems* line_box,
NGInlineBoxState*,
LayoutUnit inline_offset = LayoutUnit());
void PlaceOutOfFlowObjects(const NGLineInfo&, const NGLineHeightMetrics&);
void PlaceOutOfFlowObjects(const NGLineInfo&,
const NGLineHeightMetrics&,
NGLogicalLineItems* line_box);
void PlaceFloatingObjects(const NGLineInfo&,
const NGLineHeightMetrics&,
const NGLineLayoutOpportunity&,
NGLogicalLineItems* line_box,
NGExclusionSpace*);
void PlaceRelativePositionedItems();
void PlaceRelativePositionedItems(NGLogicalLineItems* line_box);
void PlaceListMarker(const NGInlineItem&,
NGInlineItemResult*,
const NGLineInfo&);
......@@ -112,7 +121,6 @@ class CORE_EXPORT NGInlineLayoutAlgorithm final
const NGExclusionSpace&,
LayoutUnit line_height);
NGLogicalLineItems& line_box_;
NGInlineLayoutStateStack* box_states_;
NGInlineChildLayoutContext* context_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment