make smooth scrolling work for arbitrary delta values