summaryrefslogtreecommitdiff
path: root/src/lib/ecore_evas
diff options
context:
space:
mode:
authorGuilherme Iscaro <iscaro@profusion.mobi>2016-11-30 13:29:19 -0200
committerBruno Dilly <bdilly@profusion.mobi>2016-12-20 18:34:39 -0200
commit044219226cf171aec201a9c4ee05b6e14e565e00 (patch)
treeb0ac8d661b19a545e3991b00aa58a51c42b55d2f /src/lib/ecore_evas
parente5acc5604a5bb728f1affc0a839878de55f5dafc (diff)
Ecore Evas: Add support for multiple mouse positions.
Since it's possible to have more than one mouse, Ecore Evas must take into account the position of all mouses and update them correctly.
Diffstat (limited to 'src/lib/ecore_evas')
-rw-r--r--src/lib/ecore_evas/ecore_evas.c4
-rw-r--r--src/lib/ecore_evas/ecore_evas_private.h6
2 files changed, 4 insertions, 6 deletions
diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c
index da485a8211..15217ce079 100644
--- a/src/lib/ecore_evas/ecore_evas.c
+++ b/src/lib/ecore_evas/ecore_evas.c
@@ -3140,8 +3140,6 @@ _ecore_evas_mouse_move_process_internal(Ecore_Evas *ee,
3140 Eina_Bool send_event = EINA_TRUE; 3140 Eina_Bool send_event = EINA_TRUE;
3141 Ecore_Evas_Cursor *cursor; 3141 Ecore_Evas_Cursor *cursor;
3142 int fx, fy, fw, fh, evt_x, evt_y; 3142 int fx, fy, fw, fh, evt_x, evt_y;
3143 ee->mouse.x = x;
3144 ee->mouse.y = y;
3145 3143
3146 evas_output_framespace_get(ee->evas, &fx, &fy, &fw, &fh); 3144 evas_output_framespace_get(ee->evas, &fx, &fy, &fw, &fh);
3147 3145
@@ -3149,6 +3147,8 @@ _ecore_evas_mouse_move_process_internal(Ecore_Evas *ee,
3149 pointer = evas_default_device_get(ee->evas, EFL_INPUT_DEVICE_CLASS_MOUSE); 3147 pointer = evas_default_device_get(ee->evas, EFL_INPUT_DEVICE_CLASS_MOUSE);
3150 cursor = eina_hash_find(ee->prop.cursors, &pointer); 3148 cursor = eina_hash_find(ee->prop.cursors, &pointer);
3151 EINA_SAFETY_ON_NULL_RETURN(cursor); 3149 EINA_SAFETY_ON_NULL_RETURN(cursor);
3150 cursor->pos_x = x;
3151 cursor->pos_y = y;
3152 if (cursor->object) 3152 if (cursor->object)
3153 { 3153 {
3154 evas_object_show(cursor->object); 3154 evas_object_show(cursor->object);
diff --git a/src/lib/ecore_evas/ecore_evas_private.h b/src/lib/ecore_evas/ecore_evas_private.h
index 74af4dccf3..aa1d7953a7 100644
--- a/src/lib/ecore_evas/ecore_evas_private.h
+++ b/src/lib/ecore_evas/ecore_evas_private.h
@@ -194,6 +194,8 @@ struct _Ecore_Evas_Cursor {
194 struct { 194 struct {
195 int x, y; 195 int x, y;
196 } hot; 196 } hot;
197 int pos_x;
198 int pos_y;
197}; 199};
198 200
199struct _Ecore_Evas 201struct _Ecore_Evas
@@ -228,10 +230,6 @@ struct _Ecore_Evas
228 } shadow; 230 } shadow;
229 231
230 struct { 232 struct {
231 int x, y;
232 } mouse;
233
234 struct {
235 int w, h; 233 int w, h;
236 } expecting_resize; 234 } expecting_resize;
237 235