summaryrefslogtreecommitdiff
path: root/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/ecore_evas/engines/drm/ecore_evas_drm.c')
-rw-r--r--src/modules/ecore_evas/engines/drm/ecore_evas_drm.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index a806cc0b36..9652144256 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -322,6 +322,25 @@ ecore_evas_drm_new_internal(const char *device, unsigned int parent EINA_UNUSED,
322 (Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process, 322 (Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process,
323 (Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process); 323 (Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process);
324 324
325 /* NB: Send a fake mouse move event so that E-Wl gets an updated
326 * pointer position, else we end up with buggers (ref: T2854) */
327 {
328 Ecore_Event_Mouse_Move *ev;
329
330 ev = calloc(1, sizeof(Ecore_Event_Mouse_Move));
331 ev->window = ee->prop.window;
332 ev->event_window = ee->prop.window;
333 ev->root_window = ee->prop.window;
334 ev->same_screen = 1;
335
336 ecore_drm_device_pointer_xy_get(dev, &ev->x, &ev->y);
337
338 ev->root.x = ev->x;
339 ev->root.y = ev->y;
340
341 ecore_event_evas_mouse_move(NULL, ECORE_EVENT_MOUSE_MOVE, ev);
342 }
343
325 return ee; 344 return ee;
326 345
327eng_err: 346eng_err: