Я работаю над программой рисования c ++ / SFML для своего chromebook Acer R11 (работает под управлением gallium linux) и хотела бы добавить поддержку multi-touch. Однако я застрял, пытаясь найти какой-то способ получить входные значения в моей программе на C ++.
Сенсорный экран работает, полный мультитач работает в Chrome, не сенсорные приложения обрабатывают его как мышь.
Методы SFML sf :: Touch мне ничего не дают, похоже, они работают только на Android и IOS.
Я попытался заставить tslib работать, но у него нет инструкций по установке, и я не могу заставить примеры программ скомпилировать и запустить.
Я попробовал код C ++ в этой теме Как получить координаты сенсорного экрана Rawdata, используя Linux но он останавливается на «Вы не root! Это может не сработать … \ n», chrome получает события касания, а не root, так что это, вероятно, неправильное направление.
Мне не удалось найти информацию об этом в Интернете. Как правильно получать сенсорные события в системе Linux?
Больше данных:
Сенсорный экран отображается в evtest в разделе / dev / input / event6: Elan Touchscreen
Когда я говорю evtest дать мне вывод, он корректно выводит вывод в реальном времени.
cat /proc/bus/input/devices shows it as
I: Bus=0018 Vendor=04f3 Product=002a Version=0000
N: Name="Elan Touchscreen"P: Phys=
s: Sysfs=/devices/platform/80622C1:00/i2c-0/i2c-ELAN0001:00/input/input6
U: Uniq=
H: Handlers=mouse1 event6
B:PROP=2
B: EV=v
B: EKY=400 0 0 0 0 0
B: ABS=661800001000003
Что ж, когда evtest действительно выдает все правильно, вам не понадобится tslib. Если вам все равно это может понадобиться, сейчас есть больше документации, и я с радостью помогу вам использовать ее, когда вы создадите там проблему Github.
Хотя это больше похоже на проблему с правильным чтением ввода вашей системы в вашем приложении 🙂
Других решений пока нет …