Merge branch 'terminology-1.5'
This commit is contained in:
commit
9f156eb948
|
@ -86,6 +86,7 @@ _mouse_up_cb(void *data,
|
||||||
Evas_Event_Mouse_Up *ev = event;
|
Evas_Event_Mouse_Up *ev = event;
|
||||||
Sel *sd = data;
|
Sel *sd = data;
|
||||||
Evas_Coord dx, dy;
|
Evas_Coord dx, dy;
|
||||||
|
Evas_Coord finger_size;
|
||||||
|
|
||||||
EINA_SAFETY_ON_NULL_RETURN(sd);
|
EINA_SAFETY_ON_NULL_RETURN(sd);
|
||||||
|
|
||||||
|
@ -96,8 +97,9 @@ _mouse_up_cb(void *data,
|
||||||
sd->down.down = EINA_FALSE;
|
sd->down.down = EINA_FALSE;
|
||||||
dx = abs(ev->canvas.x - sd->down.x);
|
dx = abs(ev->canvas.x - sd->down.x);
|
||||||
dy = abs(ev->canvas.y - sd->down.y);
|
dy = abs(ev->canvas.y - sd->down.y);
|
||||||
if ((dx <= elm_config_finger_size_get()) &&
|
finger_size = elm_config_finger_size_get();
|
||||||
(dy <= elm_config_finger_size_get()))
|
if ((dx <= finger_size) &&
|
||||||
|
(dy <= finger_size))
|
||||||
{
|
{
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Entry *en;
|
Entry *en;
|
||||||
|
@ -110,7 +112,7 @@ _mouse_up_cb(void *data,
|
||||||
evas_object_geometry_get(en->bg, &ox, &oy, &ow, &oh);
|
evas_object_geometry_get(en->bg, &ox, &oy, &ow, &oh);
|
||||||
if (ELM_RECTS_INTERSECT(ox, oy, ow, oh, x, y, 1, 1))
|
if (ELM_RECTS_INTERSECT(ox, oy, ow, oh, x, y, 1, 1))
|
||||||
{
|
{
|
||||||
sel_entry_selected_set(data, en->obj, EINA_FALSE);
|
sel_entry_selected_set(sd->self, en->obj, EINA_FALSE);
|
||||||
sd->select_me = EINA_TRUE;
|
sd->select_me = EINA_TRUE;
|
||||||
sd->exit_me = EINA_FALSE;
|
sd->exit_me = EINA_FALSE;
|
||||||
if (sd->autozoom_timeout)
|
if (sd->autozoom_timeout)
|
||||||
|
@ -792,21 +794,10 @@ sel_entry_selected_set(Evas_Object *obj, Evas_Object *entry, Eina_Bool keep_befo
|
||||||
config = sd->config;
|
config = sd->config;
|
||||||
if (!config) return;
|
if (!config) return;
|
||||||
|
|
||||||
|
/* Unselect previous selected item */
|
||||||
EINA_LIST_FOREACH(sd->items, l, en)
|
EINA_LIST_FOREACH(sd->items, l, en)
|
||||||
{
|
{
|
||||||
if (en->obj == entry)
|
if ( (en->obj != entry) && (en->selected) )
|
||||||
{
|
|
||||||
if ((sd->w > 0) && (sd->h > 0))
|
|
||||||
edje_object_signal_emit(en->bg, "selected", "terminology");
|
|
||||||
else
|
|
||||||
sd->pending_sel = EINA_TRUE;
|
|
||||||
evas_object_stack_below(en->bg, sd->o_event);
|
|
||||||
en->was_selected = EINA_FALSE;
|
|
||||||
en->selected = EINA_TRUE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (en->selected)
|
|
||||||
{
|
{
|
||||||
if ((sd->w > 0) && (sd->h > 0))
|
if ((sd->w > 0) && (sd->h > 0))
|
||||||
edje_object_signal_emit(en->bg, "unselected", "terminology");
|
edje_object_signal_emit(en->bg, "unselected", "terminology");
|
||||||
|
@ -816,10 +807,25 @@ sel_entry_selected_set(Evas_Object *obj, Evas_Object *entry, Eina_Bool keep_befo
|
||||||
sd->pending_sel = EINA_TRUE;
|
sd->pending_sel = EINA_TRUE;
|
||||||
}
|
}
|
||||||
en->selected = EINA_FALSE;
|
en->selected = EINA_FALSE;
|
||||||
}
|
sd->select_me = EINA_FALSE;
|
||||||
|
sd->exit_me = EINA_FALSE;
|
||||||
}
|
}
|
||||||
if (!keep_before) en->selected_before = EINA_FALSE;
|
if (!keep_before) en->selected_before = EINA_FALSE;
|
||||||
}
|
}
|
||||||
|
/* Select new item */
|
||||||
|
EINA_LIST_FOREACH(sd->items, l, en)
|
||||||
|
{
|
||||||
|
if (en->obj == entry)
|
||||||
|
{
|
||||||
|
en->was_selected = EINA_FALSE;
|
||||||
|
en->selected = EINA_TRUE;
|
||||||
|
if ((sd->w > 0) && (sd->h > 0))
|
||||||
|
edje_object_signal_emit(en->bg, "selected", "terminology");
|
||||||
|
else
|
||||||
|
sd->pending_sel = EINA_TRUE;
|
||||||
|
evas_object_stack_below(en->bg, sd->o_event);
|
||||||
|
}
|
||||||
|
}
|
||||||
sd->use_px = EINA_FALSE;
|
sd->use_px = EINA_FALSE;
|
||||||
_transit(sd, config->tab_zoom);
|
_transit(sd, config->tab_zoom);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue