TODO: fix scroll bug