diff options
author | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2013-11-02 13:50:13 +0900 |
---|---|---|
committer | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2013-11-02 13:50:13 +0900 |
commit | c4f54e23e617b758110abc2cd91569a32aa2126a (patch) | |
tree | 83a595a757bab964022624dbbf11338356d4d6cf | |
parent | 298f4af7fa324ae78822329b755ee06f6d127a86 (diff) | |
download | efl-c4f54e23e617b758110abc2cd91569a32aa2126a.tar.gz |
fix framespace handling in evas _render to not cause in/out events...
but this is not finished. this needs proper fixing. this is a quick
patch for just the worst. the real solution is discussed here:
https://phab.enlightenment.org/T457
-rw-r--r-- | src/lib/evas/canvas/evas_render.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/evas_render.c b/src/lib/evas/canvas/evas_render.c index 3b14c28bda..7e0b16b6e8 100644 --- a/src/lib/evas/canvas/evas_render.c +++ b/src/lib/evas/canvas/evas_render.c @@ -1661,6 +1661,7 @@ evas_render_updates_internal(Evas *eo_e, if (!strncmp(e->engine.module->definition->name, "wayland", 7)) { + evas_event_freeze(eo_e); /* check for master clip */ if (!e->framespace.clip) { @@ -1670,6 +1671,8 @@ evas_render_updates_internal(Evas *eo_e, evas_object_resize(e->framespace.clip, e->viewport.w - e->framespace.w, e->viewport.h - e->framespace.h); + evas_object_pass_events_set(e->framespace.clip, EINA_TRUE); + evas_object_layer_set(e->framespace.clip, EVAS_LAYER_MIN); evas_object_show(e->framespace.clip); } @@ -1702,6 +1705,9 @@ evas_render_updates_internal(Evas *eo_e, evas_object_clip_set(obj->object, e->framespace.clip); } } + if (!evas_object_clipees_get(e->framespace.clip)) + evas_object_hide(e->framespace.clip); + evas_event_thaw(eo_e); } /* phase 1.5. check if the video should be inlined or stay in their overlay */ |