adjustScroll method

void adjustScroll(
  1. int viewportHeight
)

Adjusts the scroll offset to keep selected row visible.

Implementation

void adjustScroll(int viewportHeight) {
  if (itemCount <= 0 || viewportHeight <= 0) return;
  selectedRowIndex = selectedRowIndex.clamp(0, itemCount - 1);

  if (selectedRowIndex < scrollOffset) {
    scrollOffset = selectedRowIndex;
  } else if (selectedRowIndex >= scrollOffset + viewportHeight) {
    scrollOffset = selectedRowIndex - viewportHeight + 1;
  }
}