summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc38
1 files changed, 15 insertions, 23 deletions
diff --git a/chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc b/chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc
index 831821243aa..01c72e4fa4c 100644
--- a/chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc
+++ b/chromium/third_party/blink/renderer/core/layout/ng/mathml/ng_math_fraction_layout_algorithm.cc
@@ -124,10 +124,7 @@ FractionStackParameters GetFractionStackParameters(const ComputedStyle& style) {
NGMathFractionLayoutAlgorithm::NGMathFractionLayoutAlgorithm(
const NGLayoutAlgorithmParams& params)
- : NGLayoutAlgorithm(params),
- border_scrollbar_padding_(params.fragment_geometry.border +
- params.fragment_geometry.padding +
- params.fragment_geometry.scrollbar) {
+ : NGLayoutAlgorithm(params) {
DCHECK(params.space.IsNewFormattingContext());
container_builder_.SetIsNewFormattingContext(
params.space.IsNewFormattingContext());
@@ -142,8 +139,7 @@ void NGMathFractionLayoutAlgorithm::GatherChildren(NGBlockNode* numerator,
NGBlockNode block_child = To<NGBlockNode>(child);
if (child.IsOutOfFlowPositioned()) {
container_builder_.AddOutOfFlowChildCandidate(
- block_child, {border_scrollbar_padding_.inline_start,
- border_scrollbar_padding_.block_start});
+ block_child, BorderScrollbarPadding().StartOffset());
continue;
}
if (!*numerator) {
@@ -169,17 +165,14 @@ scoped_refptr<const NGLayoutResult> NGMathFractionLayoutAlgorithm::Layout() {
NGBlockNode denominator = nullptr;
GatherChildren(&numerator, &denominator);
- const LogicalSize border_box_size = container_builder_.InitialBorderBoxSize();
- auto child_available_size =
- ShrinkAvailableSize(border_box_size, border_scrollbar_padding_);
auto numerator_space = CreateConstraintSpaceForMathChild(
- Node(), child_available_size, ConstraintSpace(), numerator);
+ Node(), ChildAvailableSize(), ConstraintSpace(), numerator);
scoped_refptr<const NGLayoutResult> numerator_layout_result =
numerator.Layout(numerator_space);
auto numerator_margins =
ComputeMarginsFor(numerator_space, numerator.Style(), ConstraintSpace());
auto denominator_space = CreateConstraintSpaceForMathChild(
- Node(), child_available_size, ConstraintSpace(), denominator);
+ Node(), ChildAvailableSize(), ConstraintSpace(), denominator);
scoped_refptr<const NGLayoutResult> denominator_layout_result =
denominator.Layout(denominator_space);
auto denominator_margins = ComputeMarginsFor(
@@ -238,8 +231,8 @@ scoped_refptr<const NGLayoutResult> NGMathFractionLayoutAlgorithm::Layout() {
LayoutUnit fraction_descent =
std::max(-numerator_shift + numerator_descent,
denominator_shift + denominator_descent);
- fraction_ascent += border_scrollbar_padding_.block_start;
- fraction_descent += border_scrollbar_padding_.block_end;
+ fraction_ascent += BorderScrollbarPadding().block_start;
+ fraction_descent += BorderScrollbarPadding().block_end;
LayoutUnit total_block_size = fraction_ascent + fraction_descent;
container_builder_.SetBaseline(fraction_ascent);
@@ -247,14 +240,13 @@ scoped_refptr<const NGLayoutResult> NGMathFractionLayoutAlgorithm::Layout() {
LogicalOffset numerator_offset;
LogicalOffset denominator_offset;
numerator_offset.inline_offset =
- border_scrollbar_padding_.inline_start + numerator_margins.inline_start +
- (child_available_size.inline_size -
+ BorderScrollbarPadding().inline_start + numerator_margins.inline_start +
+ (ChildAvailableSize().inline_size -
(numerator_fragment.InlineSize() + numerator_margins.InlineSum())) /
2;
denominator_offset.inline_offset =
- border_scrollbar_padding_.inline_start +
- denominator_margins.inline_start +
- (child_available_size.inline_size -
+ BorderScrollbarPadding().inline_start + denominator_margins.inline_start +
+ (ChildAvailableSize().inline_size -
(denominator_fragment.InlineSize() + denominator_margins.InlineSum())) /
2;
@@ -274,11 +266,11 @@ scoped_refptr<const NGLayoutResult> NGMathFractionLayoutAlgorithm::Layout() {
denominator.StoreMargins(ConstraintSpace(), denominator_margins);
LayoutUnit block_size = ComputeBlockSizeForFragment(
- ConstraintSpace(), Style(), border_scrollbar_padding_, total_block_size,
- border_box_size.inline_size);
+ ConstraintSpace(), Style(), BorderPadding(), total_block_size,
+ container_builder_.InitialBorderBoxSize().inline_size);
container_builder_.SetIntrinsicBlockSize(total_block_size);
- container_builder_.SetBlockSize(block_size);
+ container_builder_.SetFragmentsTotalBlockSize(block_size);
NGOutOfFlowLayoutPart(Node(), ConstraintSpace(), container_builder_.Borders(),
&container_builder_)
@@ -290,7 +282,7 @@ scoped_refptr<const NGLayoutResult> NGMathFractionLayoutAlgorithm::Layout() {
MinMaxSizesResult NGMathFractionLayoutAlgorithm::ComputeMinMaxSizes(
const MinMaxSizesInput& child_input) const {
if (auto result = CalculateMinMaxSizesIgnoringChildren(
- Node(), border_scrollbar_padding_))
+ Node(), BorderScrollbarPadding()))
return *result;
MinMaxSizes sizes;
@@ -310,7 +302,7 @@ MinMaxSizesResult NGMathFractionLayoutAlgorithm::ComputeMinMaxSizes(
child_result.depends_on_percentage_block_size;
}
- sizes += border_scrollbar_padding_.InlineSum();
+ sizes += BorderScrollbarPadding().InlineSum();
return {sizes, depends_on_percentage_block_size};
}