From 303faf8e33a816bc84a9deab3b436acc0967fa3c Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Fri, 25 Sep 2015 10:51:43 -0400 Subject: [PATCH] ecore-wl2: Raise dnd drop event when we get the event from the data listener Signed-off-by: Chris Michael --- src/lib/ecore_wl2/ecore_wl2_dnd.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c b/src/lib/ecore_wl2/ecore_wl2_dnd.c index 49091422a0..4a20098c99 100644 --- a/src/lib/ecore_wl2/ecore_wl2_dnd.c +++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c @@ -134,7 +134,23 @@ _ecore_wl2_dnd_motion(Ecore_Wl2_Input *input, int x, int y, unsigned int timesta void _ecore_wl2_dnd_drop(Ecore_Wl2_Input *input) { - /* TODO: raise dnd drop event */ + Ecore_Wl2_Event_Dnd_Drop *ev; + + ev = calloc(1, sizeof(Ecore_Wl2_Event_Dnd_Drop)); + if (!ev) return; + + if (input->drag.source) + { + if (input->focus.pointer) + ev->win = input->focus.pointer->id; + if (input->focus.keyboard) + ev->source = input->focus.keyboard->id; + } + + ev->x = input->pointer.sx; + ev->y = input->pointer.sy; + + ecore_event_add(ECORE_WL2_EVENT_DND_DROP, ev, NULL, NULL); } void