Rewrite ScrollDirectionListener to work with list's which inequally high listeitems