fix gesture recognizer handling