From 18c40befc0e8303cdc6ff0f5ffeda8624a1a5e99 Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Tue, 18 Mar 2014 07:27:33 +0000 Subject: [PATCH] ecore-evas-drm: Fix setting of the ecore_evas property window and register the prop.window for events. @fix: ecore_evas_window_get expects an Ecore_Window to be returned so we cannot use a void pointer in ecore_drm_device_window_get. Signed-off-by: Chris Michael --- src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 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 96175ee..703c060 100644 --- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c +++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c @@ -19,14 +19,6 @@ # include //#endif -/* local structures */ -typedef struct _Ecore_Evas_Engine_Data_Drm Ecore_Evas_Engine_Data_Drm; - -struct _Ecore_Evas_Engine_Data_Drm -{ - int fd; -}; - /* local function prototypes */ static int _ecore_evas_drm_init(const char *device); static int _ecore_evas_drm_shutdown(void); @@ -213,9 +205,18 @@ ecore_evas_drm_new_internal(const char *device, unsigned int parent, int x, int goto eng_err; } + ee->prop.window = einfo->info.output; + _ecore_evas_register(ee); ecore_evas_input_event_register(ee); - ecore_drm_device_window_set(dev, ee); + + ecore_drm_device_window_set(dev, ee->prop.window); + ecore_event_window_register(ee->prop.window, ee, ee->evas, + (Ecore_Event_Mouse_Move_Cb)_ecore_evas_mouse_move_process, + (Ecore_Event_Multi_Move_Cb)_ecore_evas_mouse_multi_move_process, + (Ecore_Event_Multi_Down_Cb)_ecore_evas_mouse_multi_down_process, + (Ecore_Event_Multi_Up_Cb)_ecore_evas_mouse_multi_up_process); + evas_event_feed_mouse_in(ee->evas, (unsigned int)((unsigned long long) (ecore_time_get() * 1000.0) & -- 2.7.4