The qualifier keys should now work for the keyboards. The problem being that the operating system enumerated those keys more than once for reasons that aren’t quite clear. Since they are stored in a HashMap, the first enum (which is actually the correct HID cookie) was being overwritten by a second HID cookie which seems to correspond to nothing.
This is good progress. I’m looking into the issue with the iShock II. It and the key naming are the next major issues.
On the key name front. We need the JInput spec o make it clear how it should work. Jeff mentioned that the names should be normalized to how the windows plugin is working. Can that be explained in a platform neutral way in the JInput spec? At the moment the Mac plugin returns the same string for getName() and getIdentifier() the spec doesn’t really require anything different, but obviously some way to get the key cap name for UI purposes is required.
Yes we need to decide this. I was lookign at Mike’s code (the original JInput author) and there is something Im not sure I 100% understand yet. In something like “Standard Keyboard” there is a funny table that converts the code for the key returned from the lower level into other codes. Im trying to udnerstand why thats there right now. It seems like *maybe * thats suppsoed to make all the keyboards return the same codes for the same keys?
Anyone else noticed that and have any bright ideas? I can try to ping mike… I used to have a forwarding address for him…
I haven’t seen that key table yet… at the moment I’m reading USB HID specs and Apple docs and poking around in Greg’s code to see if I can get proper gamepad support in there. It is going well so far, but my time is limited (I’m sure you know the feeling). But I do hope to make some progress by the end of this weekend. If I’m lucky, to the point of having fully working gamepad support.