summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2016-05-31 12:15:25 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2016-05-31 19:03:04 +0900
commit4381d3a8242f5e36597cdc127d6afbe427f9e011 (patch)
treed280db725d60f9f5146e4ea2a489f2b65bc6ffde
parent02716d03c88e48fed609a39cc11e2024d3f033af (diff)
Evas events: Store position as double only
This splits pixel and subpixel precision by using different methods rather than two different storage values.
-rw-r--r--src/lib/ecore_evas/ecore_evas.c25
-rw-r--r--src/lib/efl/interfaces/efl_common_internal.h3
-rw-r--r--src/lib/evas/canvas/efl_pointer_event.c38
-rw-r--r--src/lib/evas/canvas/efl_pointer_event.eo24
-rw-r--r--src/lib/evas/canvas/evas_events.c6
-rw-r--r--src/lib/evas/canvas/evas_events_legacy.c44
6 files changed, 79 insertions, 61 deletions
diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c
index 67640fcc45..3e772dc968 100644
--- a/src/lib/ecore_evas/ecore_evas.c
+++ b/src/lib/ecore_evas/ecore_evas.c
@@ -4291,27 +4291,24 @@ ecore_evas_psl1ght_new(const char* name, int w, int h)
4291 * 3. let evas send legacy & eo events to the objects 4291 * 3. let evas send legacy & eo events to the objects
4292 */ 4292 */
4293 4293
4294#define EVENT_XY_SET(EV, X, Y, MX, MY, FX, FY) do { \ 4294#define EVENT_XY_SET(EV, MX, MY, FX, FY) do { \
4295 EV->cur.x = (X) - (FX); EV->cur.xsub = (MX) - (FX); \ 4295 EV->cur.x = (MX) - (FX); EV->cur.y = (MY) - (FY); \
4296 EV->cur.y = (Y) - (FY); EV->cur.ysub = (MY) - (FY); \
4297 } while (0) 4296 } while (0)
4298 4297
4299static inline void 4298static inline void
4300_pointer_position_set(Efl_Pointer_Event_Data *ev, Ecore_Evas *ee, int x, int y, double mx, double my) 4299_pointer_position_set(Efl_Pointer_Event_Data *ev, Ecore_Evas *ee, double mx, double my)
4301{ 4300{
4302 int fx, fy, fw, fh; 4301 int fx, fy, fw, fh;
4303 4302
4304 evas_output_framespace_get(ee->evas, &fx, &fy, &fw, &fh); 4303 evas_output_framespace_get(ee->evas, &fx, &fy, &fw, &fh);
4305 if (ee->rotation == 0) 4304 if (ee->rotation == 0)
4306 EVENT_XY_SET(ev, x, y, mx, my, fx, fy); 4305 EVENT_XY_SET(ev, mx, my, fx, fy);
4307 else if (ee->rotation == 90) 4306 else if (ee->rotation == 90)
4308 EVENT_XY_SET(ev, ee->h + fw - y - 1, x, ee->h + fw - my - 1, mx, fx, fy); 4307 EVENT_XY_SET(ev, ee->h + fw - my - 1, mx, fx, fy);
4309 else if (ee->rotation == 180) 4308 else if (ee->rotation == 180)
4310 EVENT_XY_SET(ev, ee->w + fw - x - 1, ee->h + fh - y - 1, 4309 EVENT_XY_SET(ev, ee->w + fw - mx - 1, ee->h + fh - my - 1, fx, fy);
4311 ee->w + fw - mx - 1, ee->h + fh - my - 1,
4312 fx, fy);
4313 else if (ee->rotation == 270) 4310 else if (ee->rotation == 270)
4314 EVENT_XY_SET(ev, y, ee->w + fh - x - 1, y, ee->w + fh - mx - 1, fx, fy); 4311 EVENT_XY_SET(ev, my, ee->w + fh - mx - 1, fx, fy);
4315} 4312}
4316 4313
4317static const Eo_Event_Description * 4314static const Eo_Event_Description *
@@ -4363,7 +4360,7 @@ _direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_P
4363 if (info->triple_click) ev->button_flags |= EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK; 4360 if (info->triple_click) ev->button_flags |= EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK;
4364 ev->timestamp = info->timestamp; 4361 ev->timestamp = info->timestamp;
4365 ev->finger = info->multi.device; 4362 ev->finger = info->multi.device;
4366 _pointer_position_set(ev, ee, info->x, info->y, info->multi.x, info->multi.y); 4363 _pointer_position_set(ev, ee, info->multi.x, info->multi.y);
4367 ev->radius = info->multi.radius; 4364 ev->radius = info->multi.radius;
4368 ev->radius_x = info->multi.radius_x; 4365 ev->radius_x = info->multi.radius_x;
4369 ev->radius_y = info->multi.radius_y; 4366 ev->radius_y = info->multi.radius_y;
@@ -4418,7 +4415,7 @@ _direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
4418 ev->action = EFL_POINTER_ACTION_MOVE; 4415 ev->action = EFL_POINTER_ACTION_MOVE;
4419 ev->timestamp = info->timestamp; 4416 ev->timestamp = info->timestamp;
4420 ev->finger = info->multi.device; 4417 ev->finger = info->multi.device;
4421 _pointer_position_set(ev, ee, info->x, info->y, info->multi.x, info->multi.y); 4418 _pointer_position_set(ev, ee, info->multi.x, info->multi.y);
4422 4419
4423 ev->radius = info->multi.radius; 4420 ev->radius = info->multi.radius;
4424 ev->radius_x = info->multi.radius_x; 4421 ev->radius_x = info->multi.radius_x;
@@ -4454,7 +4451,7 @@ _direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
4454 4451
4455 ev->action = EFL_POINTER_ACTION_WHEEL; 4452 ev->action = EFL_POINTER_ACTION_WHEEL;
4456 ev->timestamp = info->timestamp; 4453 ev->timestamp = info->timestamp;
4457 _pointer_position_set(ev, ee, info->x, info->y, info->x, info->y); 4454 _pointer_position_set(ev, ee, info->x, info->y);
4458 ev->wheel.z = info->z; 4455 ev->wheel.z = info->z;
4459 ev->wheel.dir = info->direction ? EFL_ORIENT_HORIZONTAL : EFL_ORIENT_VERTICAL; 4456 ev->wheel.dir = info->direction ? EFL_ORIENT_HORIZONTAL : EFL_ORIENT_VERTICAL;
4460 4457
@@ -4483,7 +4480,7 @@ _direct_mouse_inout(Ecore_Evas *ee, const Ecore_Event_Mouse_IO *info, Efl_Pointe
4483 4480
4484 ev->action = action; 4481 ev->action = action;
4485 ev->timestamp = info->timestamp; 4482 ev->timestamp = info->timestamp;
4486 _pointer_position_set(ev, ee, info->x, info->y, info->x, info->y); 4483 _pointer_position_set(ev, ee, info->x, info->y);
4487 4484
4488 eo_event_callback_call(e, _event_description_get(ev->action), evt); 4485 eo_event_callback_call(e, _event_description_get(ev->action), evt);
4489 processed = ev->evas_done; 4486 processed = ev->evas_done;
diff --git a/src/lib/efl/interfaces/efl_common_internal.h b/src/lib/efl/interfaces/efl_common_internal.h
index 32ddb12169..4e02451f18 100644
--- a/src/lib/efl/interfaces/efl_common_internal.h
+++ b/src/lib/efl/interfaces/efl_common_internal.h
@@ -33,8 +33,7 @@ struct _Efl_Pointer_Event_Data
33 double pressure; 33 double pressure;
34 double angle; 34 double angle;
35 struct { 35 struct {
36 int x, y; 36 double x, y;
37 double xsub, ysub; // couldn't we just cast from double to int?
38 } cur, prev; 37 } cur, prev;
39 struct { 38 struct {
40 Efl_Orient dir; 39 Efl_Orient dir;
diff --git a/src/lib/evas/canvas/efl_pointer_event.c b/src/lib/evas/canvas/efl_pointer_event.c
index 66a5e682da..5b11ce6706 100644
--- a/src/lib/evas/canvas/efl_pointer_event.c
+++ b/src/lib/evas/canvas/efl_pointer_event.c
@@ -151,32 +151,56 @@ _efl_pointer_event_button_pressed_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Dat
151} 151}
152 152
153EOLIAN static void 153EOLIAN static void
154_efl_pointer_event_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y, double xsub, double ysub) 154_efl_pointer_event_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y)
155{
156 pd->cur.x = (double) x;
157 pd->cur.y = (double) y;
158}
159
160EOLIAN static void
161_efl_pointer_event_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y)
162{
163 if (x) *x = (int) pd->cur.x;
164 if (y) *y = (int) pd->cur.y;
165}
166
167EOLIAN static void
168_efl_pointer_event_position_precise_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double x, double y)
155{ 169{
156 pd->cur.x = x; 170 pd->cur.x = x;
157 pd->cur.y = y; 171 pd->cur.y = y;
158 pd->cur.xsub = xsub;
159 pd->cur.ysub = ysub;
160} 172}
161 173
162EOLIAN static void 174EOLIAN static void
163_efl_pointer_event_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y, double *xsub, double *ysub) 175_efl_pointer_event_position_precise_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double *x, double *y)
164{ 176{
165 if (x) *x = pd->cur.x; 177 if (x) *x = pd->cur.x;
166 if (y) *y = pd->cur.y; 178 if (y) *y = pd->cur.y;
167 if (xsub) *xsub = pd->cur.xsub;
168 if (ysub) *ysub = pd->cur.ysub;
169} 179}
170 180
171EOLIAN static void 181EOLIAN static void
172_efl_pointer_event_previous_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y) 182_efl_pointer_event_previous_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y)
173{ 183{
184 pd->prev.x = (double) x;
185 pd->prev.y = (double) y;
186}
187
188EOLIAN static void
189_efl_pointer_event_previous_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y)
190{
191 if (x) *x = (int) pd->prev.x;
192 if (y) *y = (int) pd->prev.y;
193}
194
195EOLIAN static void
196_efl_pointer_event_previous_position_precise_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double x, double y)
197{
174 pd->prev.x = x; 198 pd->prev.x = x;
175 pd->prev.y = y; 199 pd->prev.y = y;
176} 200}
177 201
178EOLIAN static void 202EOLIAN static void
179_efl_pointer_event_previous_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y) 203_efl_pointer_event_previous_position_precise_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double *x, double *y)
180{ 204{
181 if (x) *x = pd->prev.x; 205 if (x) *x = pd->prev.x;
182 if (y) *y = pd->prev.y; 206 if (y) *y = pd->prev.y;
diff --git a/src/lib/evas/canvas/efl_pointer_event.eo b/src/lib/evas/canvas/efl_pointer_event.eo
index 48d522a4b2..04531db50d 100644
--- a/src/lib/evas/canvas/efl_pointer_event.eo
+++ b/src/lib/evas/canvas/efl_pointer_event.eo
@@ -29,14 +29,21 @@ class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
29 pressed: bool; 29 pressed: bool;
30 } 30 }
31 } 31 }
32 /* FIXME: output vs. canvas position??? */
33 @property position { 32 @property position {
34 [[Position where the event happened, relative to the window.]] 33 [[Position where the event happened, relative to the window.]]
35 values { 34 values {
36 x: int; 35 x: int;
37 y: int; 36 y: int;
38 xsub: double; 37 }
39 ysub: double; 38 }
39 @property position_precise {
40 [[Position where the event happened, with subpixel precision
41
42 Note: Same value as @.position, relative to the window.
43 ]]
44 values {
45 x: double;
46 y: double;
40 } 47 }
41 } 48 }
42 @property previous_position { 49 @property previous_position {
@@ -49,6 +56,17 @@ class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
49 y: int; 56 y: int;
50 } 57 }
51 } 58 }
59 @property previous_position_precise {
60 [[Position of the previous event, with subpixel precision.
61
62 Valid for move events, may not be valid for other events.
63 Relative to the window. May be equal to @.position_precise.
64 ]]
65 values {
66 x: double;
67 y: double;
68 }
69 }
52 @property device { 70 @property device {
53 [[Pointing device that originated this event.]] 71 [[Pointing device that originated this event.]]
54 values { 72 values {
diff --git a/src/lib/evas/canvas/evas_events.c b/src/lib/evas/canvas/evas_events.c
index f9fa85f488..2c336e92e4 100644
--- a/src/lib/evas/canvas/evas_events.c
+++ b/src/lib/evas/canvas/evas_events.c
@@ -3207,7 +3207,7 @@ _evas_canvas_event_pointer_cb(void *data, const Eo_Event *event)
3207 _canvas_event_feed_multi_move_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y, 3207 _canvas_event_feed_multi_move_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y,
3208 ev->radius, ev->radius_x, ev->radius_y, 3208 ev->radius, ev->radius_x, ev->radius_y,
3209 ev->pressure, ev->angle, 3209 ev->pressure, ev->angle,
3210 ev->cur.xsub, ev->cur.ysub, 3210 ev->cur.x, ev->cur.y,
3211 ev->timestamp, ev->data, ev); 3211 ev->timestamp, ev->data, ev);
3212 } 3212 }
3213 break; 3213 break;
@@ -3222,7 +3222,7 @@ _evas_canvas_event_pointer_cb(void *data, const Eo_Event *event)
3222 _canvas_event_feed_multi_down_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y, 3222 _canvas_event_feed_multi_down_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y,
3223 ev->radius, ev->radius_x, ev->radius_y, 3223 ev->radius, ev->radius_x, ev->radius_y,
3224 ev->pressure, ev->angle, 3224 ev->pressure, ev->angle,
3225 ev->cur.xsub, ev->cur.ysub, ev->button_flags, 3225 ev->cur.x, ev->cur.y, ev->button_flags,
3226 ev->timestamp, ev->data, ev); 3226 ev->timestamp, ev->data, ev);
3227 } 3227 }
3228 break; 3228 break;
@@ -3237,7 +3237,7 @@ _evas_canvas_event_pointer_cb(void *data, const Eo_Event *event)
3237 _canvas_event_feed_multi_up_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y, 3237 _canvas_event_feed_multi_up_internal(eo_e, e, ev->finger, ev->cur.x, ev->cur.y,
3238 ev->radius, ev->radius_x, ev->radius_y, 3238 ev->radius, ev->radius_x, ev->radius_y,
3239 ev->pressure, ev->angle, 3239 ev->pressure, ev->angle,
3240 ev->cur.xsub, ev->cur.ysub, ev->button_flags, 3240 ev->cur.x, ev->cur.y, ev->button_flags,
3241 ev->timestamp, ev->data, ev); 3241 ev->timestamp, ev->data, ev);
3242 } 3242 }
3243 break; 3243 break;
diff --git a/src/lib/evas/canvas/evas_events_legacy.c b/src/lib/evas/canvas/evas_events_legacy.c
index f94a3aa680..dd887028d1 100644
--- a/src/lib/evas/canvas/evas_events_legacy.c
+++ b/src/lib/evas/canvas/evas_events_legacy.c
@@ -30,8 +30,6 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
30 ev->action = EFL_POINTER_ACTION_IN; 30 ev->action = EFL_POINTER_ACTION_IN;
31 ev->cur.x = e->canvas.x; 31 ev->cur.x = e->canvas.x;
32 ev->cur.y = e->canvas.y; 32 ev->cur.y = e->canvas.y;
33 ev->cur.xsub = e->canvas.x;
34 ev->cur.ysub = e->canvas.y;
35 ev->data = e->data; 33 ev->data = e->data;
36 ev->timestamp = e->timestamp; 34 ev->timestamp = e->timestamp;
37 ev->event_flags = e->event_flags; 35 ev->event_flags = e->event_flags;
@@ -49,8 +47,6 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
49 ev->action = EFL_POINTER_ACTION_OUT; 47 ev->action = EFL_POINTER_ACTION_OUT;
50 ev->cur.x = e->canvas.x; 48 ev->cur.x = e->canvas.x;
51 ev->cur.y = e->canvas.y; 49 ev->cur.y = e->canvas.y;
52 ev->cur.xsub = e->canvas.x;
53 ev->cur.ysub = e->canvas.y;
54 ev->data = e->data; 50 ev->data = e->data;
55 ev->timestamp = e->timestamp; 51 ev->timestamp = e->timestamp;
56 ev->event_flags = e->event_flags; 52 ev->event_flags = e->event_flags;
@@ -69,8 +65,6 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
69 ev->button = e->button; 65 ev->button = e->button;
70 ev->cur.x = e->canvas.x; 66 ev->cur.x = e->canvas.x;
71 ev->cur.y = e->canvas.y; 67 ev->cur.y = e->canvas.y;
72 ev->cur.xsub = e->canvas.x;
73 ev->cur.ysub = e->canvas.y;
74 ev->data = e->data; 68 ev->data = e->data;
75 ev->button_flags = e->flags; 69 ev->button_flags = e->flags;
76 ev->timestamp = e->timestamp; 70 ev->timestamp = e->timestamp;
@@ -90,8 +84,6 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
90 ev->button = e->button; 84 ev->button = e->button;
91 ev->cur.x = e->canvas.x; 85 ev->cur.x = e->canvas.x;
92 ev->cur.y = e->canvas.y; 86 ev->cur.y = e->canvas.y;
93 ev->cur.xsub = e->canvas.x;
94 ev->cur.ysub = e->canvas.y;
95 ev->data = e->data; 87 ev->data = e->data;
96 ev->button_flags = e->flags; 88 ev->button_flags = e->flags;
97 ev->timestamp = e->timestamp; 89 ev->timestamp = e->timestamp;
@@ -111,12 +103,8 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
111 ev->pressed_buttons = e->buttons; 103 ev->pressed_buttons = e->buttons;
112 ev->cur.x = e->cur.canvas.x; 104 ev->cur.x = e->cur.canvas.x;
113 ev->cur.y = e->cur.canvas.y; 105 ev->cur.y = e->cur.canvas.y;
114 ev->cur.xsub = e->cur.canvas.x;
115 ev->cur.ysub = e->cur.canvas.y;
116 ev->prev.x = e->prev.canvas.x; 106 ev->prev.x = e->prev.canvas.x;
117 ev->prev.y = e->prev.canvas.y; 107 ev->prev.y = e->prev.canvas.y;
118 ev->prev.xsub = e->prev.canvas.x;
119 ev->prev.ysub = e->prev.canvas.y;
120 ev->data = e->data; 108 ev->data = e->data;
121 ev->timestamp = e->timestamp; 109 ev->timestamp = e->timestamp;
122 ev->event_flags = e->event_flags; 110 ev->event_flags = e->event_flags;
@@ -136,8 +124,6 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
136 ev->wheel.z = e->z; 124 ev->wheel.z = e->z;
137 ev->cur.x = e->canvas.x; 125 ev->cur.x = e->canvas.x;
138 ev->cur.y = e->canvas.y; 126 ev->cur.y = e->canvas.y;
139 ev->cur.xsub = e->canvas.x;
140 ev->cur.ysub = e->canvas.y;
141 ev->data = e->data; 127 ev->data = e->data;
142 ev->timestamp = e->timestamp; 128 ev->timestamp = e->timestamp;
143 ev->event_flags = e->event_flags; 129 ev->event_flags = e->event_flags;
@@ -158,10 +144,8 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
158 ev->radius_y = e->radius_y; 144 ev->radius_y = e->radius_y;
159 ev->pressure = e->pressure; 145 ev->pressure = e->pressure;
160 ev->angle = e->angle; 146 ev->angle = e->angle;
161 ev->cur.x = e->canvas.x; 147 ev->cur.x = e->canvas.xsub;
162 ev->cur.y = e->canvas.y; 148 ev->cur.y = e->canvas.ysub;
163 ev->cur.xsub = e->canvas.xsub;
164 ev->cur.ysub = e->canvas.ysub;
165 ev->data = e->data; 149 ev->data = e->data;
166 ev->button_flags = e->flags; 150 ev->button_flags = e->flags;
167 ev->timestamp = e->timestamp; 151 ev->timestamp = e->timestamp;
@@ -183,10 +167,8 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
183 ev->radius_y = e->radius_y; 167 ev->radius_y = e->radius_y;
184 ev->pressure = e->pressure; 168 ev->pressure = e->pressure;
185 ev->angle = e->angle; 169 ev->angle = e->angle;
186 ev->cur.x = e->canvas.x; 170 ev->cur.x = e->canvas.xsub;
187 ev->cur.y = e->canvas.y; 171 ev->cur.y = e->canvas.ysub;
188 ev->cur.xsub = e->canvas.xsub;
189 ev->cur.ysub = e->canvas.ysub;
190 ev->data = e->data; 172 ev->data = e->data;
191 ev->button_flags = e->flags; 173 ev->button_flags = e->flags;
192 ev->timestamp = e->timestamp; 174 ev->timestamp = e->timestamp;
@@ -208,10 +190,8 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
208 ev->radius_y = e->radius_y; 190 ev->radius_y = e->radius_y;
209 ev->pressure = e->pressure; 191 ev->pressure = e->pressure;
210 ev->angle = e->angle; 192 ev->angle = e->angle;
211 ev->cur.x = e->cur.canvas.x; 193 ev->cur.x = e->cur.canvas.xsub;
212 ev->cur.y = e->cur.canvas.y; 194 ev->cur.y = e->cur.canvas.ysub;
213 ev->cur.xsub = e->cur.canvas.xsub;
214 ev->cur.ysub = e->cur.canvas.ysub;
215 ev->data = e->data; 195 ev->data = e->data;
216 ev->timestamp = e->timestamp; 196 ev->timestamp = e->timestamp;
217 ev->event_flags = e->event_flags; 197 ev->event_flags = e->event_flags;
@@ -318,8 +298,8 @@ efl_pointer_event_legacy_info_get(const Efl_Pointer_Event *evt, Evas_Callback_Ty
318 e->angle = ev->angle; 298 e->angle = ev->angle;
319 e->canvas.x = ev->cur.x; 299 e->canvas.x = ev->cur.x;
320 e->canvas.y = ev->cur.y; 300 e->canvas.y = ev->cur.y;
321 e->canvas.xsub = ev->cur.xsub; 301 e->canvas.xsub = ev->cur.x;
322 e->canvas.ysub = ev->cur.ysub; 302 e->canvas.ysub = ev->cur.y;
323 e->output.x = ev->cur.x; 303 e->output.x = ev->cur.x;
324 e->output.y = ev->cur.y; 304 e->output.y = ev->cur.y;
325 e->data = ev->data; 305 e->data = ev->data;
@@ -369,8 +349,8 @@ efl_pointer_event_legacy_info_get(const Efl_Pointer_Event *evt, Evas_Callback_Ty
369 e->angle = ev->angle; 349 e->angle = ev->angle;
370 e->canvas.x = ev->cur.x; 350 e->canvas.x = ev->cur.x;
371 e->canvas.y = ev->cur.y; 351 e->canvas.y = ev->cur.y;
372 e->canvas.xsub = ev->cur.xsub; 352 e->canvas.xsub = ev->cur.x;
373 e->canvas.ysub = ev->cur.ysub; 353 e->canvas.ysub = ev->cur.y;
374 e->output.x = ev->cur.x; 354 e->output.x = ev->cur.x;
375 e->output.y = ev->cur.y; 355 e->output.y = ev->cur.y;
376 e->data = ev->data; 356 e->data = ev->data;
@@ -424,8 +404,8 @@ efl_pointer_event_legacy_info_get(const Efl_Pointer_Event *evt, Evas_Callback_Ty
424 e->angle = ev->angle; 404 e->angle = ev->angle;
425 e->cur.canvas.x = ev->cur.x; 405 e->cur.canvas.x = ev->cur.x;
426 e->cur.canvas.y = ev->cur.y; 406 e->cur.canvas.y = ev->cur.y;
427 e->cur.canvas.xsub = ev->cur.xsub; 407 e->cur.canvas.xsub = ev->cur.x;
428 e->cur.canvas.ysub = ev->cur.ysub; 408 e->cur.canvas.ysub = ev->cur.y;
429 e->cur.output.x = ev->cur.x; 409 e->cur.output.x = ev->cur.x;
430 e->cur.output.y = ev->cur.y; 410 e->cur.output.y = ev->cur.y;
431 e->data = ev->data; 411 e->data = ev->data;