summaryrefslogtreecommitdiff
path: root/src/modules/ecore_evas/engines/x/ecore_evas_x.c
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2020-03-08 12:25:35 +0100
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2020-03-08 12:29:41 +0100
commit0dcbc26a5a974c76d5db5c6c59652f1ae7c4fb9f (patch)
treebe10211fb384d1221db819ae0f2088081bfbce26 /src/modules/ecore_evas/engines/x/ecore_evas_x.c
parentb2bd0c548f03b8178e40e0cfa6e9c31c4bff38b1 (diff)
ecore_evas_x: honor forign dnd implementations
enlightenment does not use the elm dnd operation implementations. Therefore we have to ensure that we only handle these operations here, when ecore_evas dnd API is used.
Diffstat (limited to '')
-rw-r--r--src/modules/ecore_evas/engines/x/ecore_evas_x.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
index 11719ee1b1..e6463fd6a9 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -4133,8 +4133,10 @@ _ecore_evas_x_dnd_drop(void *udata EINA_UNUSED, int type EINA_UNUSED, void *even
4133 edata = ee->engine.data; 4133 edata = ee->engine.data;
4134 if (ee->func.fn_dnd_drop) 4134 if (ee->func.fn_dnd_drop)
4135 ee->func.fn_dnd_drop(ee, 1, ecore_evas_dnd_pos_get(ee, 1), _x11_dnd_action_map(drop->action)); 4135 ee->func.fn_dnd_drop(ee, 1, ecore_evas_dnd_pos_get(ee, 1), _x11_dnd_action_map(drop->action));
4136 if (!edata->selection_data[ECORE_EVAS_SELECTION_BUFFER_DRAG_AND_DROP_BUFFER].requested_type) 4136 if (edata->selection_data[ECORE_EVAS_SELECTION_BUFFER_DRAG_AND_DROP_BUFFER].delivery &&
4137 !edata->selection_data[ECORE_EVAS_SELECTION_BUFFER_DRAG_AND_DROP_BUFFER].requested_type)
4137 { 4138 {
4139 //only abort dnd if we have something to deliver here, otherwise some other dnd implementation in our own window is handling that
4138 ecore_x_dnd_send_finished(); 4140 ecore_x_dnd_send_finished();
4139 } 4141 }
4140 ecore_evas_dnd_leave(ee, 1, EINA_POSITION2D(drop->position.x ,drop->position.y)); 4142 ecore_evas_dnd_leave(ee, 1, EINA_POSITION2D(drop->position.x ,drop->position.y));