Hi, On Android platform, keyinput events are read by EventHub.cpp code which opens new input device and record's keyevents into a queue. you might have to check the code in the path given below for more information, there are so much define.. framework/base/core/libs/ui/Eventhub.cpp framework/base/core/libs/ui/KeyCharaterMap.cpp framework/base/services/java/com/android/server/KeyInputQueue.java
Regards, Subbu On Sat, Jun 26, 2010 at 5:55 PM, Henk Kok <[email protected]> wrote: > Dear group, > > I am part of a team that is developing a pointing device which we want > to get to work on Android-x86. Actually, Android seems to be the first > linux flavour that will allow our full-blown version to function. We > happen to have a rather elaborate HID descriptor, which under Windows > will result in 10 HID devices in the device manager. Many linux > kernels seem to trip over the fact that by default we do absolute > pointing, but we also have optional relative pointing available. These > kernels see that we can produce relative pointing reports and > therefore silently ignore the absolute reports, but the kernel from > Android-x86 doesn't :). Other than that, we can also produce > multitouch reports, MCE (system control, vendor control and the other > one that seems to have slipped my mind for now ;) ) and HID keyboard > reports. Needless to say, I was very happy to see that on Android-x86 > our absolute pointing messages end up in userspace through /dev/ > mice. :) > > The real bummer is, that in the main view, the mouse cursor does not > respond. Apparently, somewhere in the event-pipeline, the absolute > messages are discarded. I have been digging in the source code for a > while, but I am unable to figure out which libraries or binaries are > responsible for e.g. reading the mouse devices. My first guess was to > look at libsdl, which is prebuilt in the source tree, but I cannot > find any makefile which uses it, and I could still happily build > everything after removing libsdl.a from the source tree. I have made > many guesses after this, but with all of them I seem to run into a > dead end. > > It appears my knowledge of how the GUI of Android works is very > limited, and what I find on the web is either information about > android phones, or a big haystack where I am not even sure that the > needle is hidden in. > > Can anyone perhaps enlighten me? How do the events from /dev/mouseX > or /dev/mice end up in the framework? > > FYI, I am using the donut-x86 branch from the sourceforge git archive, > where I took the latest version from (a couple of times, yesterday was > the most recent) > > Regards, > > - Henk Kok. > > -- > unsubscribe: [email protected] > website: http://groups.google.com/group/android-porting > -- unsubscribe: [email protected] website: http://groups.google.com/group/android-porting
