Evas: Fix propagation of key events

UP/DOWN arrows were having effects on both focus and entry cursor
moves. This was due to an invalid propagation of the changes to
event_flags (on_hold).

Fixes T3845
This commit is contained in:
Jean-Philippe Andre 2016-06-07 21:46:54 +09:00
parent 2471d962ed
commit 05732c7472
2 changed files with 4 additions and 0 deletions

View File

@ -275,6 +275,7 @@ evas_object_event_callback_call(Evas_Object *eo_obj, Evas_Object_Protected_Data
}
#undef EV_CASE
if (pevflags) efl_event_flags_set(eo_event_info, *pevflags);
eo_event_callback_call(eo_obj, eo_event_desc, eo_event_info);
if (pevflags) *pevflags = efl_event_flags_get(eo_event_info);
}

View File

@ -2716,6 +2716,7 @@ _canvas_event_feed_key_down_internal(Eo *eo_e,
}
}
}
if (!ke) EV_DEL(eo_event_info);
if ((e->focused) && (!exclusive))
{
Evas_Object_Protected_Data *focused_obj = eo_data_scope_get(e->focused, EVAS_OBJECT_CLASS);
@ -2736,6 +2737,8 @@ _canvas_event_feed_key_down_internal(Eo *eo_e,
ke->modifiers = NULL;
ke->locks = NULL;
}
else
EV_DEL(eo_event_info);
}
static void