double clampScrollOffset(ScrollableState scrollable, [ double newScrollOffset ])

Return the newScrollOffset clamped according to edge and scrollable's scroll behavior. The value of newScrollOffset defaults to scrollable.scrollOffset.

Source

double clampScrollOffset(ScrollableState scrollable, [double newScrollOffset]) {
  final double scrollOffset = newScrollOffset ?? scrollable.scrollOffset;
  final double minScrollOffset = scrollable.scrollBehavior.minScrollOffset;
  final double maxScrollOffset = scrollable.scrollBehavior.maxScrollOffset;
  switch (edge) {
    case ScrollableEdge.both:
      return scrollOffset.clamp(minScrollOffset, maxScrollOffset);
    case ScrollableEdge.leading:
      return scrollOffset.clamp(minScrollOffset, double.INFINITY);
    case ScrollableEdge.trailing:
      return scrollOffset.clamp(double.NEGATIVE_INFINITY, maxScrollOffset);
    case ScrollableEdge.none:
      return scrollOffset;
  }
  return scrollOffset;
}