Current edje just ignore events connected to a swallowed part from
inside edje and also doesn't set evas_object_pass_events_set() if
"mouse_events: 0".
I think it's not the correct behavior since you cannot do edje
programs to act on swallowed part and also swallowed part will catch
events due missing evas_object_pass_events_set() and not pass it, even
if edje says it should not act on events. As I think edje as a theme
engine and I think this behavior should be set by theme, I've written
this patch.
This patch also does a minor refactory to avoid code duplication:
callbacks should be added on edje_object_file_set() and
edje_object_part_swallow(), removed on edje_object_part_unswallow()
(and _swallow(), if there was an already swallowed object) and
_edje_file_del().
PS: There are two patches attached edje_patch_swallow_events.patch is
against cvs HEAD, edje_patch_swallow_events.relative.patch is relative
to my previous patch on edje_extern_object_*()
(edje_patch_extern.patch)
edje_callbacks.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
edje_load.c | 47 ++++-------------------------------------------
edje_private.h | 2 ++
edje_util.c | 17 +++++++++++++++++
4 files changed, 77 insertions(+), 43 deletions(-)
--
Gustavo Sverzut Barbieri
--------------------------------------
Jabber: [EMAIL PROTECTED]
MSN: [EMAIL PROTECTED]
ICQ#: 17249123
Skype: gsbarbieri
Mobile: +55 (81) 9927 0010
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel