updated todo, moved canvas restore/save calls