#include "third_party/blink/renderer/core/layout/mathml/math_row_layout_algorithm.h"
#include "third_party/blink/renderer/core/layout/block_break_token.h"
#include "third_party/blink/renderer/core/layout/fragmentation_utils.h"
#include "third_party/blink/renderer/core/layout/inline/inline_child_layout_context.h"
#include "third_party/blink/renderer/core/layout/length_utils.h"
#include "third_party/blink/renderer/core/layout/logical_box_fragment.h"
#include "third_party/blink/renderer/core/layout/mathml/math_layout_utils.h"
#include "third_party/blink/renderer/core/layout/physical_box_fragment.h"
#include "third_party/blink/renderer/core/mathml/mathml_element.h"
#include "third_party/blink/renderer/core/mathml/mathml_operator_element.h"
namespace blink {
namespace {
inline LayoutUnit InlineOffsetForDisplayMathCentering(
bool is_display_block_math,
LayoutUnit available_inline_size,
LayoutUnit max_row_inline_size) { … }
static void DetermineOperatorSpacing(const BlockNode& node,
LayoutUnit* lspace,
LayoutUnit* rspace) { … }
}
MathRowLayoutAlgorithm::MathRowLayoutAlgorithm(
const LayoutAlgorithmParams& params)
: … { … }
void MathRowLayoutAlgorithm::LayoutRowItems(ChildrenVector* children,
LayoutUnit* max_row_block_baseline,
LogicalSize* row_total_size) { … }
const LayoutResult* MathRowLayoutAlgorithm::Layout() { … }
MinMaxSizesResult MathRowLayoutAlgorithm::ComputeMinMaxSizes(
const MinMaxSizesFloatInput&) { … }
}