adjustScroll method

void adjustScroll(
  1. int viewportHeight
)

Updates scroll offset based on selected index to keep selection visible.

Implementation

void adjustScroll(int viewportHeight) {
  if (items.isEmpty || viewportHeight <= 0) return;
  selectedIndex = selectedIndex.clamp(0, items.length - 1);

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