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

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

Issue 2724133003: [LayoutNG] Switch NGConstraintSpace to being RefCounted. (Closed)
Patch Set: moar. Created 3 years, 9 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 NGLineBuilder_h 5 #ifndef NGLineBuilder_h
6 #define NGLineBuilder_h 6 #define NGLineBuilder_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "core/layout/ng/ng_physical_fragment.h" 9 #include "core/layout/ng/ng_physical_fragment.h"
10 #include "core/layout/ng/ng_units.h" 10 #include "core/layout/ng/ng_units.h"
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 // Include |InlineItemMetrics| into the metrics for this line box. 133 // Include |InlineItemMetrics| into the metrics for this line box.
134 void UpdateMaxAscentAndDescent(const InlineItemMetrics&); 134 void UpdateMaxAscentAndDescent(const InlineItemMetrics&);
135 }; 135 };
136 136
137 void PlaceItems(const Vector<LineItemChunk, 32>&); 137 void PlaceItems(const Vector<LineItemChunk, 32>&);
138 void AccumulateUsedFonts(const NGLayoutInlineItem&, 138 void AccumulateUsedFonts(const NGLayoutInlineItem&,
139 const LineItemChunk&, 139 const LineItemChunk&,
140 LineBoxData*); 140 LineBoxData*);
141 141
142 Persistent<NGInlineNode> inline_box_; 142 Persistent<NGInlineNode> inline_box_;
143 Persistent<const NGConstraintSpace> constraint_space_; 143 const NGConstraintSpace* constraint_space_; // Not owned as STACK_ALLOCATED.
144 Vector<RefPtr<NGPhysicalFragment>, 32> fragments_; 144 Vector<RefPtr<NGPhysicalFragment>, 32> fragments_;
145 Vector<NGLogicalOffset, 32> offsets_; 145 Vector<NGLogicalOffset, 32> offsets_;
146 Vector<LineBoxData, 32> line_box_data_list_; 146 Vector<LineBoxData, 32> line_box_data_list_;
147 unsigned start_index_ = 0; 147 unsigned start_index_ = 0;
148 unsigned start_offset_ = 0; 148 unsigned start_offset_ = 0;
149 unsigned last_index_ = 0; 149 unsigned last_index_ = 0;
150 unsigned end_offset_ = 0; 150 unsigned end_offset_ = 0;
151 unsigned last_break_opportunity_index_ = 0; 151 unsigned last_break_opportunity_index_ = 0;
152 unsigned last_break_opportunity_offset_ = 0; 152 unsigned last_break_opportunity_offset_ = 0;
153 LayoutUnit end_position_; 153 LayoutUnit end_position_;
154 LayoutUnit last_break_opportunity_position_; 154 LayoutUnit last_break_opportunity_position_;
155 LayoutUnit content_size_; 155 LayoutUnit content_size_;
156 LayoutUnit max_inline_size_; 156 LayoutUnit max_inline_size_;
157 FontBaseline baseline_type_; 157 FontBaseline baseline_type_;
158 158
159 #if DCHECK_IS_ON() 159 #if DCHECK_IS_ON()
160 unsigned is_bidi_reordered_ : 1; 160 unsigned is_bidi_reordered_ : 1;
161 #endif 161 #endif
162 }; 162 };
163 163
164 } // namespace blink 164 } // namespace blink
165 165
166 #endif // NGLineBuilder_h 166 #endif // NGLineBuilder_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698