efl/gesture: ignore successive press events in zoom recognizer when canceled
authorMike Blumenkrantz <zmike@samsung.com>
Mon, 27 Jan 2020 18:38:45 +0000 (13:38 -0500)
committerJongmin Lee <jm105.lee@samsung.com>
Tue, 11 Feb 2020 21:58:35 +0000 (06:58 +0900)
cancel is used to indicate that a gesture which has begun to trigger has been
canceled, so if we have already canceled then we should not re-cancel here

Reviewed-by: woochan lee <wc0917.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D11207

src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.c

index 7cb0631..4eef014 100644 (file)
@@ -191,6 +191,8 @@ _efl_canvas_gesture_recognizer_zoom_efl_canvas_gesture_recognizer_recognize(Eo *
          if (td->touch_down > 2)
            {
               _reset_recognizer(pd);
+              if (efl_gesture_state_get(gesture) == EFL_GESTURE_STATE_CANCELED)
+                return EFL_GESTURE_RECOGNIZER_RESULT_IGNORE;
               return EFL_GESTURE_RECOGNIZER_RESULT_CANCEL;
            }
          if (td->touch_down == 1)