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

Side by Side Diff: third_party/WebKit/Source/core/layout/ng/ng_inline_node.h

Issue 2649583002: [LayoutNG] Remove the ng_layout_coordinator and temporary LayoutSync method. (Closed)
Patch Set: rebase v2 Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef NGInlineNode_h 5 #ifndef NGInlineNode_h
6 #define NGInlineNode_h 6 #define NGInlineNode_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "core/layout/ng/ng_layout_input_node.h" 9 #include "core/layout/ng/ng_layout_input_node.h"
10 #include "platform/fonts/FontFallbackPriority.h" 10 #include "platform/fonts/FontFallbackPriority.h"
11 #include "platform/fonts/shaping/ShapeResult.h" 11 #include "platform/fonts/shaping/ShapeResult.h"
12 #include "platform/heap/Handle.h" 12 #include "platform/heap/Handle.h"
13 #include "platform/text/TextDirection.h" 13 #include "platform/text/TextDirection.h"
14 #include "wtf/text/WTFString.h" 14 #include "wtf/text/WTFString.h"
15 #include <unicode/ubidi.h> 15 #include <unicode/ubidi.h>
16 #include <unicode/uscript.h> 16 #include <unicode/uscript.h>
17 17
18 namespace blink { 18 namespace blink {
19 19
20 class ComputedStyle; 20 class ComputedStyle;
21 class LayoutBlockFlow; 21 class LayoutBlockFlow;
22 class LayoutObject; 22 class LayoutObject;
23 class LayoutUnit; 23 class LayoutUnit;
24 class NGConstraintSpace; 24 class NGConstraintSpace;
25 class NGFragment;
26 class NGLayoutAlgorithm; 25 class NGLayoutAlgorithm;
27 class NGLayoutInlineItem; 26 class NGLayoutInlineItem;
28 class NGLayoutInlineItemRange; 27 class NGLayoutInlineItemRange;
29 class NGLayoutInlineItemsBuilder; 28 class NGLayoutInlineItemsBuilder;
30 class NGLineBuilder; 29 class NGLineBuilder;
30 class NGPhysicalFragment;
31 31
32 // Represents an inline node to be laid out. 32 // Represents an inline node to be laid out.
33 class CORE_EXPORT NGInlineNode : public NGLayoutInputNode { 33 class CORE_EXPORT NGInlineNode : public NGLayoutInputNode {
34 public: 34 public:
35 NGInlineNode(LayoutObject* start_inline, ComputedStyle* block_style); 35 NGInlineNode(LayoutObject* start_inline, ComputedStyle* block_style);
36 ~NGInlineNode() override; 36 ~NGInlineNode() override;
37 37
38 bool Layout(NGConstraintSpace*, NGFragment**) override; 38 NGPhysicalFragment* Layout(NGConstraintSpace*) override;
39 bool LayoutInline(NGConstraintSpace*, NGLineBuilder*); 39 bool LayoutInline(NGConstraintSpace*, NGLineBuilder*);
40 NGInlineNode* NextSibling() override; 40 NGInlineNode* NextSibling() override;
41 41
42 // Prepare inline and text content for layout. Must be called before 42 // Prepare inline and text content for layout. Must be called before
43 // calling the Layout method. 43 // calling the Layout method.
44 void PrepareLayout(); 44 void PrepareLayout();
45 45
46 String Text(unsigned start_offset, unsigned end_offset) const { 46 String Text(unsigned start_offset, unsigned end_offset) const {
47 return text_content_.substring(start_offset, end_offset); 47 return text_content_.substring(start_offset, end_offset);
48 } 48 }
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 181
182 private: 182 private:
183 NGLayoutInlineItem* start_item_; 183 NGLayoutInlineItem* start_item_;
184 unsigned size_; 184 unsigned size_;
185 unsigned start_index_; 185 unsigned start_index_;
186 }; 186 };
187 187
188 } // namespace blink 188 } // namespace blink
189 189
190 #endif // NGInlineNode_h 190 #endif // NGInlineNode_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698