improve keyboard navigation for zoom effect
This commit is contained in:
parent
d0e3824adf
commit
2d2ce8c298
13
src/zoom.c
13
src/zoom.c
|
@ -281,8 +281,18 @@ _zoom_key(void *d EINA_UNUSED, int t EINA_UNUSED, Ecore_Event_Key *ev)
|
|||
if (!e_util_strcmp(ev->key, "Escape"))
|
||||
_zoom_hide();
|
||||
else if (!e_util_strcmp(ev->key, "Left"))
|
||||
{
|
||||
if (current)
|
||||
n = eina_list_prev(current) ?: eina_list_last(current);
|
||||
else
|
||||
{
|
||||
n = evas_object_data_get(eina_list_nth(zoom_objs, e_zone_current_get()->num), "__DSCLIENTS");
|
||||
n = eina_list_last(n);
|
||||
}
|
||||
}
|
||||
else if (!e_util_strcmp(ev->key, "Right"))
|
||||
{
|
||||
if (current)
|
||||
{
|
||||
n = eina_list_next(current);
|
||||
if (!n)
|
||||
|
@ -292,6 +302,9 @@ _zoom_key(void *d EINA_UNUSED, int t EINA_UNUSED, Ecore_Event_Key *ev)
|
|||
for (f = n = current; f; n = f, f = eina_list_prev(f));
|
||||
}
|
||||
}
|
||||
else
|
||||
n = evas_object_data_get(eina_list_nth(zoom_objs, e_zone_current_get()->num), "__DSCLIENTS");
|
||||
}
|
||||
else if ((!strcmp(ev->key, "Return")) || (!strcmp(ev->key, "KP_Enter")))
|
||||
{
|
||||
e_client_activate(evas_object_data_get(eina_list_data_get(current), "E_Client"), 1);
|
||||
|
|
Loading…
Reference in New Issue