aboutsummaryrefslogtreecommitdiffstats
path: root/legacy/evas/src/lib/canvas/evas_callbacks.c
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2003-12-11 11:20:40 +0000
committerCarsten Haitzler <raster@rasterman.com>2003-12-11 11:20:40 +0000
commit155b09b09213d1bacae4b32efb9e676671af8271 (patch)
tree40ae1f489d32580722561ea9c4282c061d0e9bfd /legacy/evas/src/lib/canvas/evas_callbacks.c
parentmore comments (diff)
downloadefl-155b09b09213d1bacae4b32efb9e676671af8271.tar.gz
propagate events from child objects to msart object parents
SVN revision: 8093
Diffstat (limited to 'legacy/evas/src/lib/canvas/evas_callbacks.c')
-rw-r--r--legacy/evas/src/lib/canvas/evas_callbacks.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/legacy/evas/src/lib/canvas/evas_callbacks.c b/legacy/evas/src/lib/canvas/evas_callbacks.c
index b09fb87af0..35b70618a1 100644
--- a/legacy/evas/src/lib/canvas/evas_callbacks.c
+++ b/legacy/evas/src/lib/canvas/evas_callbacks.c
@@ -112,7 +112,12 @@ evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void
/* MEM OK */
Evas_Object_List **l_mod, *l;
- if (!obj->callbacks) return;
+ if (!obj->callbacks)
+ {
+ if (obj->smart.parent)
+ evas_object_event_callback_call(obj->smart.parent, type, event_info);
+ return;
+ }
switch (type)
{
case EVAS_CALLBACK_MOUSE_IN:
@@ -180,6 +185,8 @@ evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void
obj->callbacks->walking_list--;
if (!obj->callbacks->walking_list)
evas_object_event_callback_clear(obj);
+ if (obj->smart.parent)
+ evas_object_event_callback_call(obj->smart.parent, type, event_info);
}
/**