Proper canvas init, fixed touch events