add touch and fix rotation