From 10b753bf7557b83c108536228d69b900ce360773 Mon Sep 17 00:00:00 2001 From: Marcel Hollerbach Date: Wed, 3 Aug 2016 19:02:26 +0200 Subject: [PATCH] e_dnd: move the ungrab to the object free otherwise there are cases where the ungrabbing is not executing, and blocking input. --- src/bin/e_comp_wl_data.c | 1 - src/bin/e_dnd.c | 6 ++++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/bin/e_comp_wl_data.c b/src/bin/e_comp_wl_data.c index 0ea274cb5..490fd0749 100644 --- a/src/bin/e_comp_wl_data.c +++ b/src/bin/e_comp_wl_data.c @@ -376,7 +376,6 @@ _e_comp_wl_data_source_cb_resource_destroy(struct wl_resource *resource) if (e_comp_wl->drag_source == source) { - e_comp_wl->drag_source = NULL; //free the drag here e_object_del(E_OBJECT(e_comp_wl->drag)); e_comp_wl->drag = NULL; diff --git a/src/bin/e_dnd.c b/src/bin/e_dnd.c index aecf4302d..b6ad29dc0 100644 --- a/src/bin/e_dnd.c +++ b/src/bin/e_dnd.c @@ -1072,8 +1072,6 @@ _e_drag_end(int x, int y) _drag_current->cb.finished = NULL; e_object_del(E_OBJECT(_drag_current)); - if (e_comp->comp_type == E_PIXMAP_TYPE_WL) - e_comp_ungrab_input(1, 1); } static void @@ -1153,7 +1151,11 @@ _e_drag_free(E_Drag *drag) ecore_x_window_free(_drag_win); ecore_x_window_shadow_tree_flush(); } + else #endif + { + e_comp_ungrab_input(1, 1); + } e_bindings_disabled_set(0); _drag_win = 0; }