From e37f5d8c28328c85085e30063e5b86ce8b7b27f9 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 6 Aug 2015 19:14:03 -0400 Subject: [PATCH] set pass events on DND type windows these are the actual drag windows from external apps and will be stuck under the cursor, ideally not blocking/intercepting all motion events --- src/bin/e_comp_x.c | 4 ++-- src/bin/e_hints.c | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index 7add7847f..6592d272c 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -3848,7 +3848,7 @@ _e_comp_x_hook_client_fetch(void *d EINA_UNUSED, E_Client *ec) free(rects); if (ec->shape_changed) e_comp_object_frame_theme_set(ec->frame, E_COMP_OBJECT_FRAME_RESHADOW); - evas_object_pass_events_set(ec->frame, 0); + evas_object_pass_events_set(ec->frame, ec->netwm.type == E_WINDOW_TYPE_DND); } else { @@ -3920,7 +3920,7 @@ _e_comp_x_hook_client_fetch(void *d EINA_UNUSED, E_Client *ec) ec->shape_input_rects = (Eina_Rectangle*)rects; ec->shape_input_rects_num = num; } - evas_object_pass_events_set(ec->frame, 0); + evas_object_pass_events_set(ec->frame, ec->netwm.type == E_WINDOW_TYPE_DND); } else { diff --git a/src/bin/e_hints.c b/src/bin/e_hints.c index 8d3084a8d..2a25a4f5e 100644 --- a/src/bin/e_hints.c +++ b/src/bin/e_hints.c @@ -720,6 +720,7 @@ e_hints_window_type_get(E_Client *ec) } } free(types); + evas_object_pass_events_set(ec->frame, ec->netwm.type == E_WINDOW_TYPE_DND); } ec->dialog = (ec->netwm.type == E_WINDOW_TYPE_DIALOG); if (!ec->dialog)