refactor ractive & touch events