much simpler updateVisibleIndexes, avoiding bugs on fast scroll