forked from enlightenment/efl
elm: _propagate_event should react only when the obj is focused obj
In efl_ui_win, _evas_event_key_cb gives efl_event_callback_call, though the focused object is not the window itself. Becuase of this, _propagate_event was called twice for event single key down. So, now, _propagate_event returns itself whenever focused object is not the win but it's called from efl_ui_win's event call. The problem can be checked with following stpes. 1. elementary_test -> focus 2. Input any directions (ex: Down) 3. Focus movement happens twice for every single input.
This commit is contained in:
parent
88419e5e87
commit
76a2bd9312
|
@ -728,6 +728,10 @@ _propagate_event(void *data EINA_UNUSED, const Efl_Event *event)
|
|||
} event_info = {};
|
||||
Eina_Bool was_hold;
|
||||
|
||||
if ((evas_focus_get(evas_object_evas_get(obj)) != elm_widget_top_get(obj)) &&
|
||||
efl_isa(obj, EFL_UI_WIN_CLASS))
|
||||
return;
|
||||
|
||||
/* FIXME: Avoid this translation to evas struct and use pointer/key events
|
||||
* in all of elementary widgets
|
||||
* See also: efl_input_key_legacy_info_fill().
|
||||
|
|
Loading…
Reference in New Issue