updating shouldScrollIntoView logic and fixing listbox scroll into view
makes the logic a little clearer (no more recursion), and adjusted hitbox tolerencing so things scroll into view more consistently (listbox options would sometimes be .3px in view and therefore would count as already in view