Index: third_party/WebKit/Source/core/layout/ng/ng_length_utils.cc |
diff --git a/third_party/WebKit/Source/core/layout/ng/ng_length_utils.cc b/third_party/WebKit/Source/core/layout/ng/ng_length_utils.cc |
index 6f3c9792f3871c7423865b0829a5d1faf67c7dc3..86e5fd7aa84d50ea9963c7ad820533e0d239dfdc 100644 |
--- a/third_party/WebKit/Source/core/layout/ng/ng_length_utils.cc |
+++ b/third_party/WebKit/Source/core/layout/ng/ng_length_utils.cc |
@@ -16,47 +16,6 @@ namespace blink { |
// - positioned and/or replaced calculations |
// - Take scrollbars into account |
-namespace { |
- |
-// Converts physical dimensions to logical ones per |
-// https://drafts.csswg.org/css-writing-modes-3/#logical-to-physical |
-// For now it's only used to calculate abstract values for margins. |
-NGBoxStrut ToLogicalDimensions(const NGPhysicalBoxStrut& physical_dim, |
- const NGWritingMode writing_mode, |
- const TextDirection direction) { |
- bool is_ltr = direction == LTR; |
- NGBoxStrut logical_dim; |
- switch (writing_mode) { |
- case VerticalRightLeft: |
- case SidewaysRightLeft: |
- logical_dim = {is_ltr ? physical_dim.top : physical_dim.bottom, |
- is_ltr ? physical_dim.bottom : physical_dim.top, |
- physical_dim.right, physical_dim.left}; |
- break; |
- case VerticalLeftRight: |
- logical_dim = {is_ltr ? physical_dim.top : physical_dim.bottom, |
- is_ltr ? physical_dim.bottom : physical_dim.top, |
- physical_dim.left, physical_dim.right}; |
- break; |
- case SidewaysLeftRight: |
- logical_dim = {is_ltr ? physical_dim.bottom : physical_dim.top, |
- is_ltr ? physical_dim.top : physical_dim.bottom, |
- physical_dim.left, physical_dim.right}; |
- break; |
- default: |
- NOTREACHED(); |
- /* FALLTHROUGH */ |
- case HorizontalTopBottom: |
- logical_dim = {is_ltr ? physical_dim.left : physical_dim.right, |
- is_ltr ? physical_dim.right : physical_dim.left, |
- physical_dim.top, physical_dim.bottom}; |
- break; |
- } |
- return logical_dim; |
-} |
- |
-} // namespace |
- |
bool NeedMinAndMaxContentSizes(const ComputedStyle& style) { |
// TODO(layout-ng): In the future we may pass a shrink-to-fit flag through the |
// constraint space; if so, this function needs to take a constraint space |
@@ -134,8 +93,7 @@ LayoutUnit ResolveInlineLength( |
LayoutUnit fill_available = |
std::max(LayoutUnit(), available_size - margins.InlineSum() - |
border_and_padding.InlineSum()); |
- value = std::min(min_and_max->max_content, |
- std::max(min_and_max->min_content, fill_available)); |
+ value = min_and_max->ShrinkToFit(fill_available); |
} |
return value + border_and_padding.InlineSum(); |
} |
@@ -291,7 +249,7 @@ NGBoxStrut ComputeMargins(const NGConstraintSpace& constraintSpace, |
physical_dim.bottom = ResolveInlineLength( |
constraintSpace, style, empty_sizes, style.marginBottom(), |
LengthResolveType::MarginBorderPaddingSize); |
- return ToLogicalDimensions(physical_dim, writing_mode, direction); |
+ return physical_dim.ConvertToLogical(writing_mode, direction); |
} |
NGBoxStrut ComputeBorders(const ComputedStyle& style) { |