| OLD | NEW |
| 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 #include "core/layout/ng/ng_constraint_space.h" | 5 #include "core/layout/ng/ng_constraint_space.h" |
| 6 | 6 |
| 7 #include "core/layout/LayoutBlock.h" | 7 #include "core/layout/LayoutBlock.h" |
| 8 #include "core/layout/LayoutView.h" | 8 #include "core/layout/LayoutView.h" |
| 9 #include "core/layout/ng/ng_constraint_space_builder.h" | 9 #include "core/layout/ng/ng_constraint_space_builder.h" |
| 10 | 10 |
| 11 namespace blink { | 11 namespace blink { |
| 12 | 12 |
| 13 NGConstraintSpace::NGConstraintSpace( | 13 NGConstraintSpace::NGConstraintSpace( |
| 14 NGWritingMode writing_mode, | 14 NGWritingMode writing_mode, |
| 15 TextDirection direction, | 15 TextDirection direction, |
| 16 NGLogicalSize available_size, | 16 NGLogicalSize available_size, |
| 17 NGLogicalSize percentage_resolution_size, | 17 NGLogicalSize percentage_resolution_size, |
| 18 NGPhysicalSize initial_containing_block_size, | 18 NGPhysicalSize initial_containing_block_size, |
| 19 LayoutUnit fragmentainer_space_available, | 19 LayoutUnit fragmentainer_space_available, |
| 20 bool is_fixed_size_inline, | 20 bool is_fixed_size_inline, |
| 21 bool is_fixed_size_block, | 21 bool is_fixed_size_block, |
| 22 bool is_shrink_to_fit, | 22 bool is_shrink_to_fit, |
| 23 bool is_inline_direction_triggers_scrollbar, | 23 bool is_inline_direction_triggers_scrollbar, |
| 24 bool is_block_direction_triggers_scrollbar, | 24 bool is_block_direction_triggers_scrollbar, |
| 25 NGFragmentationType block_direction_fragmentation_type, | 25 NGFragmentationType block_direction_fragmentation_type, |
| 26 bool is_new_fc, | 26 bool is_new_fc, |
| 27 bool is_anonymous, | 27 bool is_anonymous, |
| 28 const NGMarginStrut& margin_strut, | 28 const NGMarginStrut& margin_strut, |
| 29 const NGLogicalOffset& bfc_offset, | 29 const NGLogicalOffset& bfc_offset, |
| 30 const WTF::Optional<NGLogicalOffset>& floats_bfc_offset, |
| 30 const std::shared_ptr<NGExclusions>& exclusions, | 31 const std::shared_ptr<NGExclusions>& exclusions, |
| 31 Vector<RefPtr<NGUnpositionedFloat>>& unpositioned_floats, | 32 Vector<RefPtr<NGUnpositionedFloat>>& unpositioned_floats, |
| 32 const WTF::Optional<LayoutUnit>& clearance_offset) | 33 const WTF::Optional<LayoutUnit>& clearance_offset) |
| 33 : available_size_(available_size), | 34 : available_size_(available_size), |
| 34 percentage_resolution_size_(percentage_resolution_size), | 35 percentage_resolution_size_(percentage_resolution_size), |
| 35 initial_containing_block_size_(initial_containing_block_size), | 36 initial_containing_block_size_(initial_containing_block_size), |
| 36 fragmentainer_space_available_(fragmentainer_space_available), | 37 fragmentainer_space_available_(fragmentainer_space_available), |
| 37 is_fixed_size_inline_(is_fixed_size_inline), | 38 is_fixed_size_inline_(is_fixed_size_inline), |
| 38 is_fixed_size_block_(is_fixed_size_block), | 39 is_fixed_size_block_(is_fixed_size_block), |
| 39 is_shrink_to_fit_(is_shrink_to_fit), | 40 is_shrink_to_fit_(is_shrink_to_fit), |
| 40 is_inline_direction_triggers_scrollbar_( | 41 is_inline_direction_triggers_scrollbar_( |
| 41 is_inline_direction_triggers_scrollbar), | 42 is_inline_direction_triggers_scrollbar), |
| 42 is_block_direction_triggers_scrollbar_( | 43 is_block_direction_triggers_scrollbar_( |
| 43 is_block_direction_triggers_scrollbar), | 44 is_block_direction_triggers_scrollbar), |
| 44 block_direction_fragmentation_type_(block_direction_fragmentation_type), | 45 block_direction_fragmentation_type_(block_direction_fragmentation_type), |
| 45 is_new_fc_(is_new_fc), | 46 is_new_fc_(is_new_fc), |
| 46 is_anonymous_(is_anonymous), | 47 is_anonymous_(is_anonymous), |
| 47 writing_mode_(writing_mode), | 48 writing_mode_(writing_mode), |
| 48 direction_(static_cast<unsigned>(direction)), | 49 direction_(static_cast<unsigned>(direction)), |
| 49 margin_strut_(margin_strut), | 50 margin_strut_(margin_strut), |
| 50 bfc_offset_(bfc_offset), | 51 bfc_offset_(bfc_offset), |
| 52 floats_bfc_offset_(floats_bfc_offset), |
| 51 exclusions_(exclusions), | 53 exclusions_(exclusions), |
| 52 clearance_offset_(clearance_offset) { | 54 clearance_offset_(clearance_offset) { |
| 53 unpositioned_floats_.swap(unpositioned_floats); | 55 unpositioned_floats_.swap(unpositioned_floats); |
| 54 } | 56 } |
| 55 | 57 |
| 56 RefPtr<NGConstraintSpace> NGConstraintSpace::CreateFromLayoutObject( | 58 RefPtr<NGConstraintSpace> NGConstraintSpace::CreateFromLayoutObject( |
| 57 const LayoutBox& box) { | 59 const LayoutBox& box) { |
| 58 auto writing_mode = FromPlatformWritingMode(box.StyleRef().GetWritingMode()); | 60 auto writing_mode = FromPlatformWritingMode(box.StyleRef().GetWritingMode()); |
| 59 bool parallel_containing_block = IsParallelWritingMode( | 61 bool parallel_containing_block = IsParallelWritingMode( |
| 60 FromPlatformWritingMode( | 62 FromPlatformWritingMode( |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 is_block_direction_triggers_scrollbar_ == | 160 is_block_direction_triggers_scrollbar_ == |
| 159 other.is_block_direction_triggers_scrollbar_ && | 161 other.is_block_direction_triggers_scrollbar_ && |
| 160 block_direction_fragmentation_type_ == | 162 block_direction_fragmentation_type_ == |
| 161 other.block_direction_fragmentation_type_ && | 163 other.block_direction_fragmentation_type_ && |
| 162 is_new_fc_ == other.is_new_fc_ && | 164 is_new_fc_ == other.is_new_fc_ && |
| 163 is_anonymous_ == other.is_anonymous_ && | 165 is_anonymous_ == other.is_anonymous_ && |
| 164 writing_mode_ == other.writing_mode_ && | 166 writing_mode_ == other.writing_mode_ && |
| 165 direction_ == other.direction_ && | 167 direction_ == other.direction_ && |
| 166 margin_strut_ == other.margin_strut_ && | 168 margin_strut_ == other.margin_strut_ && |
| 167 bfc_offset_ == other.bfc_offset_ && | 169 bfc_offset_ == other.bfc_offset_ && |
| 170 floats_bfc_offset_ == other.floats_bfc_offset_ && |
| 168 clearance_offset_ == other.clearance_offset_; | 171 clearance_offset_ == other.clearance_offset_; |
| 169 } | 172 } |
| 170 | 173 |
| 171 bool NGConstraintSpace::operator!=(const NGConstraintSpace& other) const { | 174 bool NGConstraintSpace::operator!=(const NGConstraintSpace& other) const { |
| 172 return !(*this == other); | 175 return !(*this == other); |
| 173 } | 176 } |
| 174 | 177 |
| 175 String NGConstraintSpace::ToString() const { | 178 String NGConstraintSpace::ToString() const { |
| 176 return String::Format( | 179 return String::Format( |
| 177 "Offset: %s,%s Size: %sx%s MarginStrut: %s" | 180 "Offset: %s,%s Size: %sx%s MarginStrut: %s" |
| 178 " Clearance: %s", | 181 " Clearance: %s", |
| 179 bfc_offset_.inline_offset.ToString().Ascii().data(), | 182 bfc_offset_.inline_offset.ToString().Ascii().data(), |
| 180 bfc_offset_.block_offset.ToString().Ascii().data(), | 183 bfc_offset_.block_offset.ToString().Ascii().data(), |
| 181 AvailableSize().inline_size.ToString().Ascii().data(), | 184 AvailableSize().inline_size.ToString().Ascii().data(), |
| 182 AvailableSize().block_size.ToString().Ascii().data(), | 185 AvailableSize().block_size.ToString().Ascii().data(), |
| 183 margin_strut_.ToString().Ascii().data(), | 186 margin_strut_.ToString().Ascii().data(), |
| 184 clearance_offset_.has_value() | 187 clearance_offset_.has_value() |
| 185 ? clearance_offset_.value().ToString().Ascii().data() | 188 ? clearance_offset_.value().ToString().Ascii().data() |
| 186 : "none"); | 189 : "none"); |
| 187 } | 190 } |
| 188 | 191 |
| 189 } // namespace blink | 192 } // namespace blink |
| OLD | NEW |