mirror of
https://github.com/libretro/RetroArch.git
synced 2026-11-12 18:45:33 -10:00
The touchscreen pointer is pressed while any contact is down and released when the last one lifts, and the pointer device answers X, Y and pressed. A multi-touch panel is read by its MT slots only: the kernel's single-touch emulation (ABS_X/ABS_Y/BTN_TOUCH) repeats the oldest contact and is ignored there. A single-touch panel keeps its contact in slot 0, the slot index starts at the kernel's unannounced slot 0, a slot resync recounts the held contacts, and panel positions are taken from the axis minimum. Regression lane: samples/input/udev_touch drives the real driver with an in-memory multi-touch and single-touch panel. Closes #20060