instead of yolo setting the first pointer-ish device which is created,
check to see if a better match for "default mouse" can be applied
@fix
return NULL;
}
- if (!e->default_mouse)
+ if (e->default_mouse)
+ {
+ int x, y;
+
+ if ((clas == EVAS_DEVICE_CLASS_MOUSE) &&
+ (parent_dev == e->default_seat) &&
+ (evas_device_class_get(e->default_mouse) != EVAS_DEVICE_CLASS_MOUSE))
+ {
+ evas_pointer_canvas_xy_get(eo_e, &x, &y);
+ evas_event_feed_mouse_out(eo_e, 0, NULL);
+ e->default_mouse = dev;
+ evas_event_feed_mouse_in(eo_e, 0, NULL);
+ }
+ }
+ else
e->default_mouse = dev;
}