updateScrollPosition method
Implementation
void updateScrollPosition(ScrollController controller) {
controller.detach(position);
scheduleMicrotask(position.dispose);
position = controller.createScrollPosition(position.physics, this, position);
controller.attach(position);
}