>As an experiment, I mapped the buttons on an iPAQ to also be modifier
>keys in the X server (by default: this was always possible using xmodmap
>or equivalent).
>For those of you not intimately involved in X programming, a modifier
>key is, for example, control, or shift, or lock (actually, X provides
>up to 8 modifier keys).
>If a modifier key is down when a keyboard event is sent, a bit is sent
>in the keyboard event indicating the modifier is down. This saves having
>to track the state of the modifier keys on the keyboard, which experience
>from early versions of X taught us was very error prone.
>What does this mean?
>It means, for example, that anytime any button is sent, you'll see the
>state of the modifier keys. The effect of this is that you can easily
>push a button and do a "c" character in xscribble, and the "right" thing
>happens in an xterm, for example.
>The iPAQ currently isn't doing all it ought to with the buttons, from
>what I understand, but the intent is to make it much easier to use
>various chording sorts of operations.
>Comments? (The server bits implementing this will be in our next release:
>if people want a server in the meanwhile, I can put it up for FTP).
> - Jim
This will work great with my idea of multiple keyboard layouts. Each
button could bring up a separate keyboard or two buttons could scroll
between different layouts.
I see at least three layouts as standard: one "QWERTY type", one numeric
and special characters and a "macro" layout with commands and scripts
accessible from the keyboard. Other layouts would be user definable.
BTW, speaking of buttons, somebody has found at least a partial solution to
the "button problem" (no multiple button press detection). There is a CE
game called "Tankzone 2000" (a Battlezone clone, available here:
http://www.stellarmetrics.com/Software/tankzone.htm). The game will
register a press of the center button (middle of joypad) while a direction
button is held down. I am trying to contact the author to try to find out
how he did that.
Tom
Received on Fri Sep 8 07:27:32 2000
This archive was generated by hypermail 2.1.8 : Tue May 04 2004 - 09:42:16 EDT