有没有办法在没有的情况下使用触摸屏明确指定确切的输入设备?
让我深入解释......
我的主机有许多输入设备:
$ ls -al /dev/input/
drwxr-xr-x 2 root root 200 Jul 11 16:09 .
drwxr-xr-x 11 root root 4580 Jul 10 15:31 ..
crw-rw-rw- 1 root root 13, 64 Jan 1 1970 event0
crw-rw-rw- 1 root root 13, 65 Jan 1 1970 event1
crw-rw-rw- 1 root root 13, 66 Jan 1 1970 event2
crw-rw-rw- 1 root root 13, 95 Jan 1 1970 event99
crw-rw---- 1 root root 13, 63 Jan 1 1970 mice
crw-rw---- 1 root root 10, 223 Jan 1 1970 uinput
其中一个输入设备(通常是event2)是通过USB连接的触摸屏。 我的问题是......
该应用程序是以全屏模式运行的Qt embedded 4.7应用程序,使用 tslib 作为触摸屏驱动程序。
对于另一个有类似问题的项目,我已经编写了一个小守护进程(我称之为“eventbundler”),它从所有/ dev / input / eventX设备读取数据并将数据发送到命名管道(FIFO)。但是,tslib不会接受fifo作为输入设备(QWS_MOUSE_PROTO=tslib:/dev/input/eventbundler-mouse
) - 可能是因为查询设备功能的IOCTL不起作用(它表示“selected device is not a touchscreen I understand
”)。
无论如何,我需要的是 tslib 应该以某种方式自动检测触摸屏设备并从中读取,即使已经拔掉了一会儿。
任何提示?
如果有任何帮助,我愿意改变Qt源代码。