elm_gesture_layer: Using tap_finger_size set in config. 11/175011/2
authorWoochan Lee <wc0917.lee@samsung.com>
Fri, 6 Apr 2018 03:53:21 +0000 (12:53 +0900)
committerWoochan Lee <wc0917.lee@samsung.com>
Fri, 6 Apr 2018 03:55:45 +0000 (12:55 +0900)
This tizen_only commit will be deleted after below commit merged.
https://phab.enlightenment.org/D5842

@tizne_only

Change-Id: I166e34a42ac0a180037f87737a732c3c3132596b

src/lib/elm_gesture_layer.c

index e50e0d4ac7b85d0150878a808beeb014e21e4588..568371a8a8c50a7af580d7e6efad68261f6762ad 100644 (file)
@@ -1659,7 +1659,10 @@ _taps_rect_get(Eina_List *taps, int idx, Evas_Coord_Rectangle *r)
  * @ingroup Elm_Gesture_Layer
  */
 static Eina_Bool
-_tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
+//TIZEN_ONLY(20180406): Use tap_size_finger config value.
+//_tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
+_tap_gesture_check_finish(Gesture_Info *gesture)
+//
 {
    /* Here we check if taps-gesture was completed successfuly */
    /* Count how many taps were received on each device then   */
@@ -1670,11 +1673,11 @@ _tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
    Eina_List *pe_list;
    Evas_Coord_Rectangle base;
    Evas_Coord_Rectangle tmp;
-   if (!tap_finger_size)  /* Use system default if not set by user */
-     //TIZEN_ONLY(20180321): gesture layer needs their own tap area size to handle sensitivity.
-     //tap_finger_size = elm_config_finger_size_get();
-     tap_finger_size = _elm_config->glayer_tap_finger_size;
-     //
+   //TIZEN_ONLY(20180406): Use tap_size_finger config value.
+   //if (!tap_finger_size)  /* Use system default if not set by user */
+   //  tap_finger_size = _elm_config->glayer_tap_finger_size;
+   ELM_GESTURE_LAYER_DATA_GET(gesture->obj, sd);
+   //
 
    if (!st->l) return EINA_FALSE;
    EINA_LIST_FOREACH(st->l, l, pe_list)
@@ -1695,16 +1698,24 @@ _tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
      {  /* Compare all other rects to base, tolerance is finger size */
         if (_taps_rect_get(st->l, i, &tmp))
           {
-             if (abs(tmp.x - base.x) > tap_finger_size)
+             //TIZEN_ONLY(20180406): Use tap_size_finger config value.
+             //if (abs(tmp.x - base.x) > tap_finger_size)
+             if (abs(tmp.x - base.x) > sd->tap_finger_size)
+             //
                return EINA_FALSE;
 
-             if (abs(tmp.y - base.y) > tap_finger_size)
+             //if (abs(tmp.y - base.y) > tap_finger_size)
+             if (abs(tmp.y - base.y) > sd->tap_finger_size)
+             //
                return EINA_FALSE;
 
-             if (abs((tmp.x + tmp.w) - (base.x + base.w)) > tap_finger_size)
+             //if (abs((tmp.x + tmp.w) - (base.x + base.w)) > tap_finger_size)
+             if (abs((tmp.x + tmp.w) - (base.x + base.w)) > sd->tap_finger_size)
                return EINA_FALSE;
 
-             if (abs((tmp.y + tmp.h) - (base.y + base.h)) > tap_finger_size)
+             //if (abs((tmp.y + tmp.h) - (base.y + base.h)) > tap_finger_size)
+             if (abs((tmp.y + tmp.h) - (base.y + base.h)) > sd->tap_finger_size)
+             //
                return EINA_FALSE;
           }
      }
@@ -1722,14 +1733,20 @@ _tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
  * @ingroup Elm_Gesture_Layer
  */
 static void
-_tap_gesture_finish(void *data, Evas_Coord tap_finger_size)
+//TIZEN_ONLY(20180406): Use tap_size_finger config value.
+//_tap_gesture_finish(void *data, Evas_Coord tap_finger_size)
+_tap_gesture_finish(void *data)
+//
 {
    /* This function will test each tap gesture when timer expires */
    Elm_Gesture_State s = ELM_GESTURE_STATE_ABORT;
    Gesture_Info *gesture = data;
    Taps_Type *st = gesture->data;
 
-   if (_tap_gesture_check_finish(gesture, tap_finger_size))
+   //TIZEN_ONLY(20180406): Use tap_size_finger config value.
+   //if (_tap_gesture_check_finish(gesture, tap_finger_size))
+   if (_tap_gesture_check_finish(gesture))
+   //
      {
         s = ELM_GESTURE_STATE_END;
      }
@@ -1755,16 +1772,23 @@ _multi_tap_timeout(void *data)
    ELM_GESTURE_LAYER_DATA_GET(data, sd);
 
    if (IS_TESTED(ELM_GESTURE_N_TAPS))
-     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TAPS],
-           sd->tap_finger_size);
+     //TIZEN_ONLY(20180406): Use tap_size_finger config value.
+     //_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TAPS],
+     //      sd->tap_finger_size);
+     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TAPS]);
+     //
 
    if (IS_TESTED(ELM_GESTURE_N_DOUBLE_TAPS))
-     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_DOUBLE_TAPS],
-           sd->tap_finger_size);
+     //_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_DOUBLE_TAPS],
+     //      sd->tap_finger_size);
+     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_DOUBLE_TAPS]);
+     //
 
    if (IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS))
-     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TRIPLE_TAPS],
-           sd->tap_finger_size);
+     //_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TRIPLE_TAPS],
+     //      sd->tap_finger_size);
+     _tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TRIPLE_TAPS]);
+     //
 
    _clear_if_finished(data);
    sd->gest_taps_timeout = NULL;
@@ -1955,9 +1979,13 @@ _tap_gesture_test(Evas_Object *obj,
                ((gesture->g_type == ELM_GESTURE_N_DOUBLE_TAPS) &&
                 !IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS)))
            {  /* Test for finish immidiatly, not waiting for timeout */
-              if (_tap_gesture_check_finish(gesture, sd->tap_finger_size))
+              //TIZEN_ONLY(20180406): Use tap_size_finger config value.
+              //if (_tap_gesture_check_finish(gesture, sd->tap_finger_size))
+              if (_tap_gesture_check_finish(gesture))
                 {
-                   _tap_gesture_finish(gesture, sd->tap_finger_size);
+                   //_tap_gesture_finish(gesture, sd->tap_finger_size);
+                   _tap_gesture_finish(gesture);
+                   //
                    return;
                 }
            }
@@ -3774,6 +3802,9 @@ _elm_gesture_layer_evas_object_smart_add(Eo *obj, Elm_Gesture_Layer_Data *priv)
    priv->long_tap_start_timeout = _elm_config->glayer_long_tap_start_timeout;
    priv->repeat_events = EINA_TRUE;
    priv->glayer_continues_enable = _elm_config->glayer_continues_enable;
+   //TIZEN_ONLY(20180406): Use tap_finger_size config value.
+   priv->tap_finger_size = _elm_config->glayer_tap_finger_size;
+   //
 
    /* FIXME: Hack to get around old configs - if too small, enlarge. */
    if (_elm_config->glayer_double_tap_timeout < 0.00001)