Index: third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc |
diff --git a/third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc b/third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc |
index 5132b9c82cef6bf34f7ea7ad3447fdc5acd450f5..3d75e48ec39508dc9e122301608fddc6e795943a 100644 |
--- a/third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc |
+++ b/third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc |
@@ -17,7 +17,7 @@ NGConstraintSpace::NGConstraintSpace(NGWritingMode writing_mode, |
NGDirection direction, |
NGPhysicalConstraintSpace* physical_space) |
: physical_space_(physical_space), |
- size_(physical_space->ContainerSize().ConvertToLogical(writing_mode)), |
+ size_(physical_space->available_size_.ConvertToLogical(writing_mode)), |
writing_mode_(writing_mode), |
direction_(direction) {} |
@@ -25,25 +25,25 @@ NGConstraintSpace* NGConstraintSpace::CreateFromLayoutObject( |
const LayoutBox& box) { |
bool fixed_inline = false, fixed_block = false, is_new_fc = false; |
// XXX for orthogonal writing mode this is not right |
- LayoutUnit container_logical_width = |
+ LayoutUnit available_logical_width = |
std::max(LayoutUnit(), box.containingBlockLogicalWidthForContent()); |
- LayoutUnit container_logical_height; |
+ LayoutUnit available_logical_height; |
if (!box.parent()) { |
- container_logical_height = box.view()->viewLogicalHeightForPercentages(); |
+ available_logical_height = box.view()->viewLogicalHeightForPercentages(); |
} else if (box.containingBlock()) { |
- container_logical_height = |
+ available_logical_height = |
box.containingBlock()->availableLogicalHeightForPercentageComputation(); |
} |
- // When we have an override size, the container_logical_{width,height} will be |
+ // When we have an override size, the available_logical_{width,height} will be |
// used as the final size of the box, so it has to include border and |
// padding. |
if (box.hasOverrideLogicalContentWidth()) { |
- container_logical_width = |
+ available_logical_width = |
box.borderAndPaddingLogicalWidth() + box.overrideLogicalContentWidth(); |
fixed_inline = true; |
} |
if (box.hasOverrideLogicalContentHeight()) { |
- container_logical_height = box.borderAndPaddingLogicalHeight() + |
+ available_logical_height = box.borderAndPaddingLogicalHeight() + |
box.overrideLogicalContentHeight(); |
fixed_block = true; |
} |
@@ -54,8 +54,10 @@ NGConstraintSpace* NGConstraintSpace::CreateFromLayoutObject( |
NGConstraintSpaceBuilder builder( |
FromPlatformWritingMode(box.styleRef().getWritingMode())); |
builder |
- .SetContainerSize( |
- NGLogicalSize(container_logical_width, container_logical_height)) |
+ .SetAvailableSize( |
+ NGLogicalSize(available_logical_width, available_logical_height)) |
+ .SetPercentageResolutionSize( |
+ NGLogicalSize(available_logical_width, available_logical_height)) |
.SetIsInlineDirectionTriggersScrollbar( |
box.styleRef().overflowInlineDirection() == OverflowAuto) |
.SetIsBlockDirectionTriggersScrollbar( |
@@ -76,8 +78,13 @@ void NGConstraintSpace::AddExclusion(const NGLogicalRect& exclusion) const { |
MutablePhysicalSpace()->AddExclusion(exclusion); |
} |
-NGLogicalSize NGConstraintSpace::ContainerSize() const { |
- return physical_space_->container_size_.ConvertToLogical( |
+NGLogicalSize NGConstraintSpace::PercentageResolutionSize() const { |
+ return physical_space_->percentage_resolution_size_.ConvertToLogical( |
+ static_cast<NGWritingMode>(writing_mode_)); |
+} |
+ |
+NGLogicalSize NGConstraintSpace::AvailableSize() const { |
+ return physical_space_->available_size_.ConvertToLogical( |
static_cast<NGWritingMode>(writing_mode_)); |
} |