computeSize method

  1. @override
double computeSize({
  1. required ParentLayout parent,
  2. required ChildLayout child,
  3. required LayoutHandle<Layout> layoutHandle,
  4. required LayoutAxis axis,
  5. required LayoutSize contentSize,
  6. required LayoutSize viewportSize,
})
override

Returns the viewport size along the axis, or 0.0 if infinite.

Implementation

@override
double computeSize({
  required ParentLayout parent,
  required ChildLayout child,
  required LayoutHandle layoutHandle,
  required LayoutAxis axis,
  required LayoutSize contentSize,
  required LayoutSize viewportSize,
}) {
  double result = switch (axis) {
    LayoutAxis.horizontal => viewportSize.width,
    LayoutAxis.vertical => viewportSize.height,
  };
  // if result is infinite, it might be coming from intrinsic sizing
  return result.isFinite ? result : 0.0;
}