Elm glayer: Added momentum to continues-gestures.
authortasn <tasn@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 25 Oct 2011 09:51:34 +0000 (09:51 +0000)
committerJaehwan Kim <jae.hwan.kim@samsung.com>
Mon, 31 Oct 2011 06:12:16 +0000 (15:12 +0900)
Womentum is now aborted and resarted as the number of fingers changes.

Signed-off-by: Aharon Hillel <a.hillel@partner.samsung.com>
git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@64380 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/elm_gesture_layer.c

index bff601b..b45b0c9 100644 (file)
@@ -3011,8 +3011,18 @@ void continues_gestures_restart(void *data, Eina_Bool states_reset)
 
    /* Run through events to restart gestures */
    Gesture_Info *g;
-   Eina_Bool n_lines, n_flicks, zoom, rotate;
+   Eina_Bool n_momentum, n_lines, n_flicks, zoom, rotate;
    /* We turn-on flag for finished, aborted, not-started gestures */
+   g = wd->gesture[ELM_GESTURE_MOMENTUM];
+   n_momentum = (g) ? ((states_reset) | ((g->state != ELM_GESTURE_STATE_START)
+         && (g->state != ELM_GESTURE_STATE_MOVE))) : EINA_FALSE;
+   if (n_momentum)
+     {
+        _momentum_test_reset(wd->gesture[ELM_GESTURE_MOMENTUM]);
+        _set_state(g, ELM_GESTURE_STATE_UNDEFINED, NULL, EINA_FALSE);
+        SET_TEST_BIT(g);
+     }
+
    g = wd->gesture[ELM_GESTURE_N_LINES];
    n_lines = (g) ? ((states_reset) | ((g->state != ELM_GESTURE_STATE_START)
          && (g->state != ELM_GESTURE_STATE_MOVE))) : EINA_FALSE;