seperate class for GestureListener