only scrolling if it needs to