How do I inject touch screen input into an Qt-embedded/Qt-enhanced/Qtopia cell phone such as openmoko/qtmoko Neo Freerunner?
The qtmoko project does not use X11 for the graphical display. Unfortunately the Linux uinput method described in the previous FAQ does not work because Qt is using TSLIB (touch screen library) to process the input and it only reads from one device (often /dev/input/event1) and not from the new UINPUT device that x11vnc creates (under -pipeinput UINPUT) So something else needs to be done. It was discovered that by simply writing the touchscreen events directly to /dev/input/event1 then input can be injected into the system. There is no x11vnc builtin mode for this yet (until we understand it better), but there is a working script provided in x11vnc/misc/qt_tslib_inject.pl. So one could use it this way for example: x11vnc … -rawfb console -pipeinput path/to/qt_tslib_inject.pl -env INJECT_OPTIONS=clickonly,cal=/etc/pointercal Read the script for how to enable other options and what the above options mean (e.g. /etc/pointercal contains TSLIB’s calibration parameters and are necessary to
Related Questions
- Can I connect via VNC to a Qt-embedded/Qt-enhanced/Qtopia application running on my handheld, cell phone, or PC using the Linux console framebuffer (i.e. not X11)?
- How will having a scanner with a touch color screen really help me, as an avid scanner listener?
- Is it good to have a touch screen cell phone?