forked from enlightenment/efl
Gesture Layer: Add API to set the finger size for taps.
The default value is the one stored in elm_config.
This commit is contained in:
parent
dcab3545cf
commit
aea9b1d262
|
@ -384,6 +384,7 @@ struct _Elm_Gesture_Layer_Smart_Data
|
||||||
Eina_List *touched; /* Information of touched devices */
|
Eina_List *touched; /* Information of touched devices */
|
||||||
|
|
||||||
/* Taps Gestures */
|
/* Taps Gestures */
|
||||||
|
Evas_Coord tap_finger_size; /* Default from Config */
|
||||||
Ecore_Timer *gest_taps_timeout; /* When this expires, dbl
|
Ecore_Timer *gest_taps_timeout; /* When this expires, dbl
|
||||||
* click/taps ABORTed */
|
* click/taps ABORTed */
|
||||||
|
|
||||||
|
@ -1385,9 +1386,12 @@ static Eina_Bool
|
||||||
_inside(Evas_Coord xx1,
|
_inside(Evas_Coord xx1,
|
||||||
Evas_Coord yy1,
|
Evas_Coord yy1,
|
||||||
Evas_Coord xx2,
|
Evas_Coord xx2,
|
||||||
Evas_Coord yy2)
|
Evas_Coord yy2,
|
||||||
|
Evas_Coord w)
|
||||||
{
|
{
|
||||||
int w = elm_config_finger_size_get() >> 1; /* Finger size devided by 2 */
|
w >>= 1; /* Use half the distance, from center to all directions */
|
||||||
|
if (!w) /* use system default instead */
|
||||||
|
w = elm_config_finger_size_get() >> 1; /* Finger size devided by 2 */
|
||||||
|
|
||||||
if (xx1 < (xx2 - w))
|
if (xx1 < (xx2 - w))
|
||||||
return EINA_FALSE;
|
return EINA_FALSE;
|
||||||
|
@ -1524,25 +1528,24 @@ _rotate_test_reset(Gesture_Info *gesture)
|
||||||
st->rotate_angular_tolerance = sd->rotate_angular_tolerance;
|
st->rotate_angular_tolerance = sd->rotate_angular_tolerance;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static Eina_List *
|
||||||
_match_fingers_compare(const void *data1,
|
_match_fingers_compare(Eina_List *list,
|
||||||
const void *data2)
|
Pointer_Event *pe1,
|
||||||
|
Evas_Coord w)
|
||||||
{
|
{
|
||||||
/* Compare coords of first item in list to cur coords */
|
/* Compare coords of first item in list to cur coords */
|
||||||
const Pointer_Event *pe1 = eina_list_data_get(data1);
|
Eina_List *pe_list;
|
||||||
const Pointer_Event *pe2 = data2;
|
Eina_List *l;
|
||||||
|
|
||||||
if (_inside(pe1->x, pe1->y, pe2->x, pe2->y))
|
EINA_LIST_FOREACH(list, l, pe_list)
|
||||||
return 0;
|
|
||||||
else if (pe1->x < pe2->x)
|
|
||||||
return -1;
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
if (pe1->x == pe2->x)
|
Pointer_Event *pe2 = eina_list_data_get(pe_list);
|
||||||
return pe1->y - pe2->y;
|
|
||||||
else
|
if (_inside(pe1->x, pe1->y, pe2->x, pe2->y, w))
|
||||||
return 1;
|
return pe_list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -1651,7 +1654,7 @@ _taps_rect_get(Eina_List *taps, int idx, Evas_Coord_Rectangle *r)
|
||||||
* @ingroup Elm_Gesture_Layer
|
* @ingroup Elm_Gesture_Layer
|
||||||
*/
|
*/
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_tap_gesture_check_finish(Gesture_Info *gesture)
|
_tap_gesture_check_finish(Gesture_Info *gesture, Evas_Coord tap_finger_size)
|
||||||
{
|
{
|
||||||
/* Here we check if taps-gesture was completed successfuly */
|
/* Here we check if taps-gesture was completed successfuly */
|
||||||
/* Count how many taps were recieved on each device then */
|
/* Count how many taps were recieved on each device then */
|
||||||
|
@ -1662,7 +1665,9 @@ _tap_gesture_check_finish(Gesture_Info *gesture)
|
||||||
Eina_List *pe_list;
|
Eina_List *pe_list;
|
||||||
Evas_Coord_Rectangle base;
|
Evas_Coord_Rectangle base;
|
||||||
Evas_Coord_Rectangle tmp;
|
Evas_Coord_Rectangle tmp;
|
||||||
Evas_Coord tap_finger_size = elm_config_finger_size_get();
|
if (!tap_finger_size) /* Use system default if not set by user */
|
||||||
|
tap_finger_size = elm_config_finger_size_get();
|
||||||
|
|
||||||
|
|
||||||
if (!st->l) return EINA_FALSE;
|
if (!st->l) return EINA_FALSE;
|
||||||
EINA_LIST_FOREACH(st->l, l, pe_list)
|
EINA_LIST_FOREACH(st->l, l, pe_list)
|
||||||
|
@ -1710,14 +1715,14 @@ _tap_gesture_check_finish(Gesture_Info *gesture)
|
||||||
* @ingroup Elm_Gesture_Layer
|
* @ingroup Elm_Gesture_Layer
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
_tap_gesture_finish(void *data)
|
_tap_gesture_finish(void *data, Evas_Coord tap_finger_size)
|
||||||
{
|
{
|
||||||
/* This function will test each tap gesture when timer expires */
|
/* This function will test each tap gesture when timer expires */
|
||||||
Elm_Gesture_State s = ELM_GESTURE_STATE_ABORT;
|
Elm_Gesture_State s = ELM_GESTURE_STATE_ABORT;
|
||||||
Gesture_Info *gesture = data;
|
Gesture_Info *gesture = data;
|
||||||
Taps_Type *st = gesture->data;
|
Taps_Type *st = gesture->data;
|
||||||
|
|
||||||
if (_tap_gesture_check_finish(gesture))
|
if (_tap_gesture_check_finish(gesture, tap_finger_size))
|
||||||
{
|
{
|
||||||
s = ELM_GESTURE_STATE_END;
|
s = ELM_GESTURE_STATE_END;
|
||||||
}
|
}
|
||||||
|
@ -1743,13 +1748,16 @@ _multi_tap_timeout(void *data)
|
||||||
ELM_GESTURE_LAYER_DATA_GET(data, sd);
|
ELM_GESTURE_LAYER_DATA_GET(data, sd);
|
||||||
|
|
||||||
if (IS_TESTED(ELM_GESTURE_N_TAPS))
|
if (IS_TESTED(ELM_GESTURE_N_TAPS))
|
||||||
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TAPS]);
|
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TAPS],
|
||||||
|
sd->tap_finger_size);
|
||||||
|
|
||||||
if (IS_TESTED(ELM_GESTURE_N_DOUBLE_TAPS))
|
if (IS_TESTED(ELM_GESTURE_N_DOUBLE_TAPS))
|
||||||
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_DOUBLE_TAPS]);
|
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_DOUBLE_TAPS],
|
||||||
|
sd->tap_finger_size);
|
||||||
|
|
||||||
if (IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS))
|
if (IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS))
|
||||||
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TRIPLE_TAPS]);
|
_tap_gesture_finish(sd->gesture[ELM_GESTURE_N_TRIPLE_TAPS],
|
||||||
|
sd->tap_finger_size);
|
||||||
|
|
||||||
_clear_if_finished(data);
|
_clear_if_finished(data);
|
||||||
sd->gest_taps_timeout = NULL;
|
sd->gest_taps_timeout = NULL;
|
||||||
|
@ -1852,7 +1860,7 @@ _tap_gesture_test(Evas_Object *obj,
|
||||||
if (pe_list)
|
if (pe_list)
|
||||||
{ /* This device touched before, verify that this tap is on */
|
{ /* This device touched before, verify that this tap is on */
|
||||||
/* top of a previous tap (including a tap of other device) */
|
/* top of a previous tap (including a tap of other device) */
|
||||||
if (!eina_list_search_unsorted(st->l, _match_fingers_compare, pe))
|
if (!_match_fingers_compare(st->l, pe, sd->tap_finger_size))
|
||||||
{ /* New DOWN event is not on top of any prev touch */
|
{ /* New DOWN event is not on top of any prev touch */
|
||||||
ev_flag = _state_set(gesture, ELM_GESTURE_STATE_ABORT,
|
ev_flag = _state_set(gesture, ELM_GESTURE_STATE_ABORT,
|
||||||
&st->info, EINA_FALSE);
|
&st->info, EINA_FALSE);
|
||||||
|
@ -1910,9 +1918,9 @@ _tap_gesture_test(Evas_Object *obj,
|
||||||
((gesture->g_type == ELM_GESTURE_N_DOUBLE_TAPS) &&
|
((gesture->g_type == ELM_GESTURE_N_DOUBLE_TAPS) &&
|
||||||
!IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS)))
|
!IS_TESTED(ELM_GESTURE_N_TRIPLE_TAPS)))
|
||||||
{ /* Test for finish immidiatly, not waiting for timeout */
|
{ /* Test for finish immidiatly, not waiting for timeout */
|
||||||
if (_tap_gesture_check_finish(gesture))
|
if (_tap_gesture_check_finish(gesture, sd->tap_finger_size))
|
||||||
{
|
{
|
||||||
_tap_gesture_finish(gesture);
|
_tap_gesture_finish(gesture, sd->tap_finger_size);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1933,7 +1941,8 @@ _tap_gesture_test(Evas_Object *obj,
|
||||||
if ((pe_last->event_type == EVAS_CALLBACK_MOUSE_DOWN) ||
|
if ((pe_last->event_type == EVAS_CALLBACK_MOUSE_DOWN) ||
|
||||||
(pe_last->event_type == EVAS_CALLBACK_MULTI_DOWN))
|
(pe_last->event_type == EVAS_CALLBACK_MULTI_DOWN))
|
||||||
{ /* Test only MOVE events that come after DOWN event */
|
{ /* Test only MOVE events that come after DOWN event */
|
||||||
if (!_inside(pe_last->x, pe_last->y, pe->x, pe->y))
|
if (!_inside(pe_last->x, pe_last->y, pe->x, pe->y,
|
||||||
|
sd->tap_finger_size))
|
||||||
{
|
{
|
||||||
ev_flag = _state_set(gesture, ELM_GESTURE_STATE_ABORT,
|
ev_flag = _state_set(gesture, ELM_GESTURE_STATE_ABORT,
|
||||||
&st->info, EINA_FALSE);
|
&st->info, EINA_FALSE);
|
||||||
|
@ -2096,7 +2105,8 @@ _n_long_tap_test(Evas_Object *obj,
|
||||||
|
|
||||||
_compute_taps_center(st, &x, &y, pe);
|
_compute_taps_center(st, &x, &y, pe);
|
||||||
/* ABORT if user moved fingers out of tap area */
|
/* ABORT if user moved fingers out of tap area */
|
||||||
if (!_inside(x, y, st->center_x, st->center_y))
|
if (!_inside(x, y, st->center_x, st->center_y,
|
||||||
|
sd->tap_finger_size))
|
||||||
{
|
{
|
||||||
ELM_SAFE_FREE(st->timeout, ecore_timer_del);
|
ELM_SAFE_FREE(st->timeout, ecore_timer_del);
|
||||||
|
|
||||||
|
@ -4090,6 +4100,43 @@ elm_gesture_layer_double_tap_timeout_get(const Evas_Object *obj)
|
||||||
return sd->double_tap_timeout;
|
return sd->double_tap_timeout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EAPI void
|
||||||
|
elm_gesture_layer_tap_finger_size_set(Evas_Object *obj,
|
||||||
|
Evas_Coord sz)
|
||||||
|
{
|
||||||
|
ELM_GESTURE_LAYER_CHECK(obj);
|
||||||
|
eo_do(obj, elm_obj_gesture_layer_tap_finger_size_set(sz));
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_tap_finger_size_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
|
||||||
|
{
|
||||||
|
Evas_Coord sz = va_arg(*list, Evas_Coord);
|
||||||
|
Elm_Gesture_Layer_Smart_Data *sd = _pd;
|
||||||
|
|
||||||
|
if (sz < 0)
|
||||||
|
sz = 0; /* Should not be negative, will reset to system value */
|
||||||
|
|
||||||
|
sd->tap_finger_size = sz;
|
||||||
|
}
|
||||||
|
|
||||||
|
EAPI Evas_Coord
|
||||||
|
elm_gesture_layer_tap_finger_size_get(const Evas_Object *obj)
|
||||||
|
{
|
||||||
|
ELM_GESTURE_LAYER_CHECK(obj) elm_config_finger_size_get();
|
||||||
|
Evas_Coord ret = 0;
|
||||||
|
eo_do((Eo *) obj, elm_obj_gesture_layer_tap_finger_size_get(&ret));
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_tap_finger_size_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
|
||||||
|
{
|
||||||
|
Evas_Coord *ret = va_arg(*list, Evas_Coord *);
|
||||||
|
Elm_Gesture_Layer_Smart_Data *sd = _pd;
|
||||||
|
*ret = sd->tap_finger_size;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_class_constructor(Eo_Class *klass)
|
_class_constructor(Eo_Class *klass)
|
||||||
{
|
{
|
||||||
|
@ -4109,6 +4156,8 @@ _class_constructor(Eo_Class *klass)
|
||||||
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET), _rotate_step_set),
|
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET), _rotate_step_set),
|
||||||
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH), _attach),
|
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH), _attach),
|
||||||
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET), _cb_set),
|
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET), _cb_set),
|
||||||
|
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_SET), _tap_finger_size_set),
|
||||||
|
EO_OP_FUNC(ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_GET), _tap_finger_size_get),
|
||||||
EO_OP_FUNC_SENTINEL
|
EO_OP_FUNC_SENTINEL
|
||||||
};
|
};
|
||||||
eo_class_funcs_set(klass, func_desc);
|
eo_class_funcs_set(klass, func_desc);
|
||||||
|
@ -4125,6 +4174,8 @@ static const Eo_Op_Description op_desc[] = {
|
||||||
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET, "This function sets step-value for rotate action."),
|
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET, "This function sets step-value for rotate action."),
|
||||||
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH, "Attach a given gesture layer widget to an Evas object, thus setting the widget's target."),
|
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH, "Attach a given gesture layer widget to an Evas object, thus setting the widget's target."),
|
||||||
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET, "Use function to set callbacks to be notified about change of state of gesture."),
|
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET, "Use function to set callbacks to be notified about change of state of gesture."),
|
||||||
|
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_SET, "Use function to set valid touch-area size for finger."),
|
||||||
|
EO_OP_DESCRIPTION(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_GET, "This function returns the valid touch-area size for finger."),
|
||||||
EO_OP_DESCRIPTION_SENTINEL
|
EO_OP_DESCRIPTION_SENTINEL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -377,3 +377,24 @@ EAPI void elm_gesture_layer_double_tap_timeout_set(Evas_Object *obj, double doub
|
||||||
*/
|
*/
|
||||||
EAPI double elm_gesture_layer_double_tap_timeout_get(const Evas_Object *obj);
|
EAPI double elm_gesture_layer_double_tap_timeout_get(const Evas_Object *obj);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 1.8
|
||||||
|
* This function sets the gesture layer finger-size for taps
|
||||||
|
* If not set, this size taken from elm_config.
|
||||||
|
* Set to ZERO if you want GLayer to use system finger size value (default)
|
||||||
|
*
|
||||||
|
* @param obj gesture-layer.
|
||||||
|
* @param fsize Finger size
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
EAPI void elm_gesture_layer_tap_finger_size_set(Evas_Object *obj, Evas_Coord sz);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 1.8
|
||||||
|
* This function returns the gesture layer finger-size for taps
|
||||||
|
*
|
||||||
|
* @param obj gesture-layer.
|
||||||
|
* @return Finger size that is currently used by Gesture Layer for taps.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
EAPI Evas_Coord elm_gesture_layer_tap_finger_size_get(const Evas_Object *obj);
|
||||||
|
|
|
@ -14,6 +14,8 @@ enum
|
||||||
ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET,
|
ELM_OBJ_GESTURE_LAYER_SUB_ID_ROTATE_STEP_SET,
|
||||||
ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH,
|
ELM_OBJ_GESTURE_LAYER_SUB_ID_ATTACH,
|
||||||
ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET,
|
ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET,
|
||||||
|
ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_SET,
|
||||||
|
ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_GET,
|
||||||
ELM_OBJ_GESTURE_LAYER_SUB_ID_LAST
|
ELM_OBJ_GESTURE_LAYER_SUB_ID_LAST
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -137,3 +139,37 @@ enum
|
||||||
* @ingroup Elm_Gesture_Layer
|
* @ingroup Elm_Gesture_Layer
|
||||||
*/
|
*/
|
||||||
#define elm_obj_gesture_layer_cb_set(idx, cb_type, cb, data) ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET), EO_TYPECHECK(Elm_Gesture_Type, idx), EO_TYPECHECK(Elm_Gesture_State, cb_type), EO_TYPECHECK(Elm_Gesture_Event_Cb, cb), EO_TYPECHECK(void *, data)
|
#define elm_obj_gesture_layer_cb_set(idx, cb_type, cb, data) ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_SUB_ID_CB_SET), EO_TYPECHECK(Elm_Gesture_Type, idx), EO_TYPECHECK(Elm_Gesture_State, cb_type), EO_TYPECHECK(Elm_Gesture_Event_Cb, cb), EO_TYPECHECK(void *, data)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def elm_obj_gesture_layer_tap_finger_size_set
|
||||||
|
* @since 1.8
|
||||||
|
*
|
||||||
|
* This function sets the gesture layer finger-size for taps
|
||||||
|
* If not set, this size is taken from elm_config.
|
||||||
|
* Set to ZERO if you want GLayer to use system finger size value (default)
|
||||||
|
* It is recommended to not set a too much big or little value to avoid weird
|
||||||
|
* behaviors.
|
||||||
|
*
|
||||||
|
* @param[in] obj gesture-layer.
|
||||||
|
* @param[in] fsize Finger size
|
||||||
|
*
|
||||||
|
* @see elm_gesture_layer_tap_finger_size_get
|
||||||
|
*
|
||||||
|
* @ingroup Elm_Gesture_Layer
|
||||||
|
*/
|
||||||
|
#define elm_obj_gesture_layer_tap_finger_size_set(sz) ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_SET), EO_TYPECHECK(Evas_Coord, sz)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def elm_obj_gesture_layer_tap_finger_size_get
|
||||||
|
* @since 1.8
|
||||||
|
*
|
||||||
|
* This function returns the gesture layer finger-size for taps
|
||||||
|
*
|
||||||
|
* @param[out] ret
|
||||||
|
* @return Finger size that is currently used by Gesture Layer for taps.
|
||||||
|
*
|
||||||
|
* @see elm_gesture_layer_tap_finger_size_set
|
||||||
|
*
|
||||||
|
* @ingroup Elm_Gesture_Layer
|
||||||
|
*/
|
||||||
|
#define elm_obj_gesture_layer_tap_finger_size_get(ret) ELM_OBJ_GESTURE_LAYER_ID(ELM_OBJ_GESTURE_LAYER_TAP_FINGER_SIZE_GET), EO_TYPECHECK(Evas_Coord *, ret)
|
||||||
|
|
|
@ -109,3 +109,25 @@ EAPI Eina_Bool elm_gesture_layer_attach(Evas_Object *obj, Evas_Object *target
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
EAPI void elm_gesture_layer_cb_set(Evas_Object *obj, Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data);
|
EAPI void elm_gesture_layer_cb_set(Evas_Object *obj, Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 1.8
|
||||||
|
* This function sets the gesture layer finger-size for taps
|
||||||
|
* If not set, this size taken from elm_config.
|
||||||
|
* Set to ZERO if you want GLayer to use system finger size value (default)
|
||||||
|
*
|
||||||
|
* @param obj gesture-layer.
|
||||||
|
* @param fsize Finger size
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
EAPI void elm_gesture_layer_tap_finger_size_set(Evas_Object *obj, Evas_Coord sz);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since 1.8
|
||||||
|
* This function returns the gesture layer finger-size for taps
|
||||||
|
*
|
||||||
|
* @param obj gesture-layer.
|
||||||
|
* @return Finger size that is currently used by Gesture Layer for taps.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
EAPI Evas_Coord elm_gesture_layer_tap_finger_size_get(const Evas_Object *obj);
|
||||||
|
|
Loading…
Reference in New Issue