task1 extra finished. TODO fix keyboard bug; task2 fixed view TODO everything else