path: root/src/lib/evas/canvas/evas_focus.c
diff options
authorJean-Philippe Andre <jp.andre@samsung.com>2017-04-12 20:13:59 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-04-12 20:28:20 +0900
commit4b09ad7d6b8833ead328f569a34fa01fc30abb4a (patch)
treebcc83454e1f4e586d168455227b59a4db1f00987 /src/lib/evas/canvas/evas_focus.c
parentevas/elm: Fix bad propagation of ON_HOLD flag (diff)
evas: Fix event propagation in elm_widget
See the previous commit. efl_provider_find() could not find a canvas because the event object had no parent. This restores the slider in E's sound mixer. Note: Input events may expose the evas canvas object because of parenting. This will eventually need fixing, as only efl.ui.win should be exposed. If 8ff2dffe7c7a21278dis backported to 1.19 then this patch also needs to be merged as well.
Diffstat (limited to 'src/lib/evas/canvas/evas_focus.c')
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/evas/canvas/evas_focus.c b/src/lib/evas/canvas/evas_focus.c
index d700e2cc49..293fb57b6c 100644
--- a/src/lib/evas/canvas/evas_focus.c
+++ b/src/lib/evas/canvas/evas_focus.c
@@ -71,7 +71,9 @@ _evas_focus_dispatch_event(Evas_Object_Protected_Data *obj, Efl_Input_Device *se
Evas_Callback_Type cb_evas, cb_obj_evas;
const Efl_Event_Description *efl_object_focus_event;
- evt = efl_input_instance_get(EFL_INPUT_FOCUS_CLASS, NULL, (void **) &ev_data);
+ evt = efl_input_instance_get(EFL_INPUT_FOCUS_CLASS,
+ efl_provider_find(obj->object, EVAS_CANVAS_CLASS),
+ (void **) &ev_data);
if (!evt) return;
ev_data->device = efl_ref(seat);