libinput_event_touch_get_y_transformed(event, h);
edev->mt_slot = libinput_event_touch_get_slot(event);
+ if (edev->mt_slot < 0)
+ {
+ /* FIXME: The single touch device return slot id -1
+ * But currently we have no API to distinguish multi touch or single touch
+ * After libinput 1.11 version, libinput provides get_touch_count API,
+ * so we can distinguish multi touch device or single touch device.
+ */
+ if (edev->mt_slot == -1)
+ edev->mt_slot = 0;
+ else
+ {
+ WRN("%d slot touch down events are not supported\n", edev->mt_slot);
+ return;
+ }
+ }
if (edev->mt_slot < E_INPUT_MAX_SLOTS)
{
edev->seat->ptr.iy = edev->seat->ptr.dy;
edev->mt_slot = libinput_event_touch_get_slot(event);
+ if (edev->mt_slot < 0)
+ {
+ /* FIXME: The single touch device return slot id -1
+ * But currently we have no API to distinguish multi touch or single touch
+ * After libinput 1.11 version, libinput provides get_touch_count API,
+ * so we can distinguish multi touch device or single touch device.
+ */
+ if (edev->mt_slot == -1)
+ edev->mt_slot = 0;
+ else
+ {
+ WRN("%d slot touch motion events are not supported\n", edev->mt_slot);
+ return;
+ }
+ }
if (edev->mt_slot < E_INPUT_MAX_SLOTS)
{
}
edev->mt_slot = libinput_event_touch_get_slot(event);
+ if (edev->mt_slot < 0)
+ {
+ /* FIXME: The single touch device return slot id -1
+ * But currently we have no API to distinguish multi touch or single touch
+ * After libinput 1.11 version, libinput provides get_touch_count API,
+ * so we can distinguish multi touch device or single touch device.
+ */
+ if (edev->mt_slot == -1)
+ edev->mt_slot = 0;
+ else
+ {
+ WRN("%d slot touch up events are not supported\n", edev->mt_slot);
+ return;
+ }
+ }
if (edev->mt_slot < E_INPUT_MAX_SLOTS)
{