forked from enlightenment/efl
Elementary patch for supporting keypad
Author: Jihoon Kim <jihoon48.kim@samsung.com> SVN revision: 55062
This commit is contained in:
parent
670ca32f20
commit
a609cc1b69
|
@ -56,7 +56,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
if (!wd) return EINA_FALSE;
|
||||
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_FALSE;
|
||||
if (elm_widget_disabled_get(obj)) return EINA_FALSE;
|
||||
if ((strcmp(ev->keyname, "Return")) && (strcmp(ev->keyname, "space")))
|
||||
if ((strcmp(ev->keyname, "Return")) &&
|
||||
(strcmp(ev->keyname, "KP_Enter")) &&
|
||||
(strcmp(ev->keyname, "space")))
|
||||
return EINA_FALSE;
|
||||
_activate(obj);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
|
|
@ -572,7 +572,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
if (elm_widget_disabled_get(obj)) return EINA_FALSE;
|
||||
if (!wd->selection_enabled) return EINA_FALSE;
|
||||
|
||||
if ((!strcmp(ev->keyname, "Left")) || (!strcmp(ev->keyname, "KP_Left")))
|
||||
if ((!strcmp(ev->keyname, "Left")) ||
|
||||
(!strcmp(ev->keyname, "KP_Left")))
|
||||
{
|
||||
_update_sel_it(obj, wd->selected_it-1);
|
||||
}
|
||||
|
@ -581,11 +582,13 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
{
|
||||
_update_sel_it(obj, wd->selected_it+1);
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Up")) || (!strcmp(ev->keyname, "KP_Up")))
|
||||
else if ((!strcmp(ev->keyname, "Up")) ||
|
||||
(!strcmp(ev->keyname, "KP_Up")))
|
||||
{
|
||||
_update_sel_it(obj, wd->selected_it-7);
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Down")) || (!strcmp(ev->keyname, "KP_Down")))
|
||||
else if ((!strcmp(ev->keyname, "Down")) ||
|
||||
(!strcmp(ev->keyname, "KP_Down")))
|
||||
{
|
||||
_update_sel_it(obj, wd->selected_it+7);
|
||||
}
|
||||
|
@ -594,7 +597,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
{
|
||||
if (_update_month(obj, -1)) _populate(obj);
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Next")) || (!strcmp(ev->keyname, "KP_Next")))
|
||||
else if ((!strcmp(ev->keyname, "Next")) ||
|
||||
(!strcmp(ev->keyname, "KP_Next")))
|
||||
{
|
||||
if (_update_month(obj, 1)) _populate(obj);
|
||||
}
|
||||
|
|
|
@ -58,7 +58,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
Evas_Event_Key_Down *ev = event_info;
|
||||
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_FALSE;
|
||||
if (elm_widget_disabled_get(obj)) return EINA_FALSE;
|
||||
if ((strcmp(ev->keyname, "Return")) && (strcmp(ev->keyname, "space")))
|
||||
if ((strcmp(ev->keyname, "Return")) &&
|
||||
(strcmp(ev->keyname, "KP_Enter")) &&
|
||||
(strcmp(ev->keyname, "space")))
|
||||
return EINA_FALSE;
|
||||
_activate(obj);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
|
|
@ -329,9 +329,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
if ((!l) && (wd->round))
|
||||
l = wd->items;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Home"))
|
||||
else if ((!strcmp(ev->keyname, "Home")) || (!strcmp(ev->keyname, "KP_Home")))
|
||||
l = wd->items;
|
||||
else if (!strcmp(ev->keyname, "End"))
|
||||
else if ((!strcmp(ev->keyname, "End")) || (!strcmp(ev->keyname, "KP_End")))
|
||||
l = eina_list_last(wd->items);
|
||||
else return EINA_FALSE;
|
||||
|
||||
|
|
|
@ -354,21 +354,21 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
y += step_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Home"))
|
||||
else if ((!strcmp(ev->keyname, "Home")) || (!strcmp(ev->keyname, "KP_Home")))
|
||||
{
|
||||
item = elm_gengrid_first_item_get(obj);
|
||||
elm_gengrid_item_bring_in(item);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "End"))
|
||||
else if ((!strcmp(ev->keyname, "End")) || (!strcmp(ev->keyname, "KP_End")))
|
||||
{
|
||||
item = elm_gengrid_last_item_get(obj);
|
||||
elm_gengrid_item_bring_in(item);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Prior"))
|
||||
else if ((!strcmp(ev->keyname, "Prior")) || (!strcmp(ev->keyname, "KP_Prior")))
|
||||
{
|
||||
if (wd->horizontal)
|
||||
{
|
||||
|
@ -385,7 +385,7 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
y -= page_y;
|
||||
}
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Next"))
|
||||
else if ((!strcmp(ev->keyname, "Next")) || (!strcmp(ev->keyname, "KP_Next")))
|
||||
{
|
||||
if (wd->horizontal)
|
||||
{
|
||||
|
|
|
@ -487,35 +487,41 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
y += step_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Home"))
|
||||
else if ((!strcmp(ev->keyname, "Home")) ||
|
||||
(!strcmp(ev->keyname, "KP_Home")))
|
||||
{
|
||||
it = elm_genlist_first_item_get(obj);
|
||||
elm_genlist_item_bring_in(it);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "End"))
|
||||
else if ((!strcmp(ev->keyname, "End")) ||
|
||||
(!strcmp(ev->keyname, "KP_End")))
|
||||
{
|
||||
it = elm_genlist_last_item_get(obj);
|
||||
elm_genlist_item_bring_in(it);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Prior"))
|
||||
else if ((!strcmp(ev->keyname, "Prior")) ||
|
||||
(!strcmp(ev->keyname, "KP_Prior")))
|
||||
{
|
||||
if (page_y < 0)
|
||||
y -= -(page_y * v_h) / 100;
|
||||
else
|
||||
y -= page_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Next"))
|
||||
else if ((!strcmp(ev->keyname, "Next")) ||
|
||||
(!strcmp(ev->keyname, "KP_Next")))
|
||||
{
|
||||
if (page_y < 0)
|
||||
y += -(page_y * v_h) / 100;
|
||||
else
|
||||
y += page_y;
|
||||
}
|
||||
else if(((!strcmp(ev->keyname, "Return")) || (!strcmp(ev->keyname, "space")))
|
||||
else if(((!strcmp(ev->keyname, "Return")) ||
|
||||
(!strcmp(ev->keyname, "KP_Enter")) ||
|
||||
(!strcmp(ev->keyname, "space")))
|
||||
&& (!wd->multi) && (wd->selected))
|
||||
{
|
||||
Elm_Genlist_Item *it = elm_genlist_selected_item_get(obj);
|
||||
|
|
|
@ -149,7 +149,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
elm_smart_scroller_child_viewport_size_get(wd->scr, &v_w, &v_h);
|
||||
|
||||
/* TODO: fix logic for horizontal mode */
|
||||
if ((!strcmp(ev->keyname, "Left")) || (!strcmp(ev->keyname, "KP_Left")))
|
||||
if ((!strcmp(ev->keyname, "Left")) ||
|
||||
(!strcmp(ev->keyname, "KP_Left")))
|
||||
{
|
||||
if ((wd->h_mode) &&
|
||||
(((evas_key_modifier_is_set(ev->modifiers, "Shift")) &&
|
||||
|
@ -162,7 +163,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
x -= step_x;
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Right")) || (!strcmp(ev->keyname, "KP_Right")))
|
||||
else if ((!strcmp(ev->keyname, "Right")) ||
|
||||
(!strcmp(ev->keyname, "KP_Right")))
|
||||
{
|
||||
if ((wd->h_mode) &&
|
||||
(((evas_key_modifier_is_set(ev->modifiers, "Shift")) &&
|
||||
|
@ -175,7 +177,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
x += step_x;
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Up")) || (!strcmp(ev->keyname, "KP_Up")))
|
||||
else if ((!strcmp(ev->keyname, "Up")) ||
|
||||
(!strcmp(ev->keyname, "KP_Up")))
|
||||
{
|
||||
if ((!wd->h_mode) &&
|
||||
(((evas_key_modifier_is_set(ev->modifiers, "Shift")) &&
|
||||
|
@ -188,7 +191,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
y -= step_y;
|
||||
}
|
||||
else if ((!strcmp(ev->keyname, "Down")) || (!strcmp(ev->keyname, "KP_Down")))
|
||||
else if ((!strcmp(ev->keyname, "Down")) ||
|
||||
(!strcmp(ev->keyname, "KP_Down")))
|
||||
{
|
||||
if ((!wd->h_mode) &&
|
||||
(((evas_key_modifier_is_set(ev->modifiers, "Shift")) &&
|
||||
|
@ -201,21 +205,24 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
else
|
||||
y += step_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Home"))
|
||||
else if ((!strcmp(ev->keyname, "Home")) ||
|
||||
(!strcmp(ev->keyname, "KP_Home")))
|
||||
{
|
||||
it = eina_list_data_get(wd->items);
|
||||
elm_list_item_bring_in(it);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "End"))
|
||||
else if ((!strcmp(ev->keyname, "End")) ||
|
||||
(!strcmp(ev->keyname, "KP_End")))
|
||||
{
|
||||
it = eina_list_data_get(eina_list_last(wd->items));
|
||||
elm_list_item_bring_in(it);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Prior"))
|
||||
else if ((!strcmp(ev->keyname, "Prior")) ||
|
||||
(!strcmp(ev->keyname, "KP_Prior")))
|
||||
{
|
||||
if (wd->h_mode)
|
||||
{
|
||||
|
@ -232,7 +239,8 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
y -= page_y;
|
||||
}
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Next"))
|
||||
else if ((!strcmp(ev->keyname, "Next")) ||
|
||||
(!strcmp(ev->keyname, "KP_Next")))
|
||||
{
|
||||
if (wd->h_mode)
|
||||
{
|
||||
|
|
|
@ -212,7 +212,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
|
||||
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_FALSE;
|
||||
|
||||
if ((strcmp(ev->keyname, "Return")) && (strcmp(ev->keyname, "space")))
|
||||
if ((strcmp(ev->keyname, "Return")) &&
|
||||
(strcmp(ev->keyname, "KP_Enter")) &&
|
||||
(strcmp(ev->keyname, "space")))
|
||||
return EINA_FALSE;
|
||||
|
||||
_toggle_panel(obj, NULL, "elm,action,panel,toggle", "*");
|
||||
|
|
|
@ -78,7 +78,10 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
Evas_Event_Key_Down *ev = event_info;
|
||||
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_FALSE;
|
||||
if (elm_widget_disabled_get(obj)) return EINA_FALSE;
|
||||
if ((strcmp(ev->keyname, "Return")) && (strcmp(ev->keyname, "space")))
|
||||
|
||||
if ((strcmp(ev->keyname, "Return")) &&
|
||||
(strcmp(ev->keyname, "KP_Enter")) &&
|
||||
(strcmp(ev->keyname, "space")))
|
||||
return EINA_FALSE;
|
||||
_activate(obj);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
|
|
@ -119,22 +119,22 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
{
|
||||
y += step_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Home"))
|
||||
else if ((!strcmp(ev->keyname, "Home")) || (!strcmp(ev->keyname, "KP_Home")))
|
||||
{
|
||||
y = 0;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "End"))
|
||||
else if ((!strcmp(ev->keyname, "End")) || (!strcmp(ev->keyname, "KP_End")))
|
||||
{
|
||||
y = max_y - v_h;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Prior"))
|
||||
else if ((!strcmp(ev->keyname, "Prior")) || (!strcmp(ev->keyname, "KP_Prior")))
|
||||
{
|
||||
if (page_y < 0)
|
||||
y -= -(page_y * v_h) / 100;
|
||||
else
|
||||
y -= page_y;
|
||||
}
|
||||
else if (!strcmp(ev->keyname, "Next"))
|
||||
else if ((!strcmp(ev->keyname, "Next")) || (!strcmp(ev->keyname, "KP_Next")))
|
||||
{
|
||||
if (page_y < 0)
|
||||
y += -(page_y * v_h) / 100;
|
||||
|
|
|
@ -81,7 +81,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
if ((!strcmp(ev->keyname, "Return")) || (!strcmp(ev->keyname, "space")))
|
||||
if ((!strcmp(ev->keyname, "Return")) ||
|
||||
(!strcmp(ev->keyname, "KP_Enter")) ||
|
||||
(!strcmp(ev->keyname, "space")))
|
||||
{
|
||||
if (wd->timeout)
|
||||
elm_slideshow_timeout_set(obj, 0);
|
||||
|
|
|
@ -54,7 +54,9 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
|
|||
if (!wd) return EINA_FALSE;
|
||||
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return EINA_FALSE;
|
||||
if (elm_widget_disabled_get(obj)) return EINA_FALSE;
|
||||
if ((strcmp(ev->keyname, "Return")) && (strcmp(ev->keyname, "space")))
|
||||
if ((strcmp(ev->keyname, "Return")) &&
|
||||
(strcmp(ev->keyname, "KP_Enter")) &&
|
||||
(strcmp(ev->keyname, "space")))
|
||||
return EINA_FALSE;
|
||||
elm_toggle_state_set(obj, !wd->state);
|
||||
evas_object_smart_callback_call(obj, SIG_CHANGED, NULL);
|
||||
|
|
Loading…
Reference in New Issue