try to fix the controller service code, add gestures help, refactory
some code