discomfitor pushed a commit to branch master.
commit 181f11a03a121b05ff4aac1b542ceb9ffeec3aba
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Jun 27 14:39:40 2013 +0100
fix override window shape input cutting
this is currently GUARANTEED to break with override shaped windows, which
means that if such a window is ever opened, it will NEVER receive input unless
it is placed over another client window. this is due to a limitation in evas
where it is impossible to (de)select input regions which forced me to choose
between either having shaped override windows (such as desktop recorders) block
all mouse input to the screen OR have normal override windows (gtk menus and
popups...) not able to ge [...]
---
src/bin/e_comp.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 6b6bd72..b58d5b2 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -2233,8 +2233,6 @@ _e_comp_win_add(E_Comp *c, Ecore_X_Window win, E_Border
*bd)
evas_object_image_colorspace_set(cw->obj, EVAS_COLORSPACE_ARGB8888);
if (cw->argb) evas_object_image_alpha_set(cw->obj, 1);
else evas_object_image_alpha_set(cw->obj, 0);
- if (cw->override)
- evas_object_pass_events_set(cw->effect_obj, EINA_TRUE);
_e_comp_win_shadow_setup(cw);
edje_object_part_swallow(cw->effect_obj, "e.swallow.content",
cw->shobj);
@@ -3757,7 +3755,12 @@
_e_comp_shapes_update_comp_win_shape_comp_helper(E_Comp_Win *cw, Eina_Tiler *tb)
SHAPE_INF("IGNORING DELETED: %u", cw->win);
return;
}
- if (cw->invalid || cw->real_hid || (!cw->visible) || (!cw->shape->visible)
|| evas_object_pass_events_get(cw->effect_obj) ||
evas_object_pass_events_get(cw->shobj))
+ if (cw->override && cw->shaped)
+ {
+ ERR("SHAPED OVERRIDE WINDOW DETECTED: INPUT SHAPE CUTTING BROKEN!");
+ return;
+ }
+ if (cw->invalid || cw->real_hid || (!cw->visible) || (!cw->shape->visible)
|| evas_object_pass_events_get(cw->effect_obj))
{
SHAPE_DBG("SKIPPING SHAPE");
return;
--
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev