I found the time (and documentation) to build a Qt keyboard driver. Basicly I just transformed sergeyvl12's code for the touchscreen driver to fit the buttons events. It's attached to this post. Using it via
Code:
export QWS_KEYBOARD=KoboKBD
or to enable debugging
Code:
export QWS_KEYBOARD=KoboKBD:debug
causes Qt to recognize button presses. I only tested it with my Glo which of course only uses the keys 90 (light button) and 116 (on/off-slider). The driver is written in such a way that it will send (almost) everything going on in /dev/input/event0 to Qt's key-processing-system so that one can easily use
Code:
QWidget::keyPressEvent(QKeyEvent*)
and
Code:
QWidget::keyReleaseEvent(QKeyEvent*)
in applications. That means that it could work on a Touch/Mini/Wifi, too. Would be nice if someone could confirm/disprove that.
I would further really appreciate it if one of the more experienced Qt coders around here would take a look at the source code because for example I have no idea what the
unicode parameter is for in the QWSKeyboardHandler's function processKeyEvent. My guess is that it's not important but thats just a guess
edit: woops, there was no debugging implemented in the former attachment... now it's in there and I just found out that there is a third keycode for the kobo glo: 59 - it's when you use a sleepcover!
PS: The driver's written and built with Qt 4.8.4!