#ifdef ECORE_XI2
#ifdef ECORE_XI2_2
+#ifndef XITouchEmulatingPointer
+#define XITouchEmulatingPointer (1 << 17)
+#endif
+
typedef struct _Ecore_X_Touch_Device_Info
{
EINA_INLIST;
case XI_TouchUpdate:
#ifdef ECORE_XI2_2
i = _ecore_x_input_touch_index_get(devid, evd->detail, XI_TouchUpdate);
+ if ((i == 0) && (evd->flags & XITouchEmulatingPointer)) return;
#endif /* #ifdef ECORE_XI2_2 */
_ecore_mouse_move
(evd->time,
case XI_TouchBegin:
#ifdef ECORE_XI2_2
i = _ecore_x_input_touch_index_get(devid, evd->detail, XI_TouchBegin);
+ if ((i == 0) && (evd->flags & XITouchEmulatingPointer)) return;
#endif /* #ifdef ECORE_XI2_2 */
_ecore_mouse_button
(ECORE_EVENT_MOUSE_BUTTON_DOWN,
case XI_TouchEnd:
#ifdef ECORE_XI2_2
i = _ecore_x_input_touch_index_get(devid, evd->detail, XI_TouchEnd);
+ if ((i == 0) && (evd->flags & XITouchEmulatingPointer))
+ {
+ _ecore_x_input_touch_index_clear(devid, i);
+ return;
+ }
#endif /* #ifdef ECORE_XI2_2 */
_ecore_mouse_button
(ECORE_EVENT_MOUSE_BUTTON_UP,