Dear devel@, We can use Xkb/AccessX's "MouseKeys" accessibility feature to provide an easy work-around for many of our touchpad problems. MouseKeys is easy to enable through xmodmap where, (on a handy B4), you do something like:
xmodmap -pke > old_map xmodmap -e 'keycode 133 = Num_Lock Pointer_EnableKeys' xmodmap -e 'keycode 111 = Up KP_Up' xmodmap -e 'keycode 116 = Down KP_Down' xmodmap -e 'keycode 113 = Left KP_Left' xmodmap -e 'keycode 114 = Right KP_Right' xmodmap -e 'keycode 36 = Return KP_Begin' Your keycodes may vary; I figured out the right ones by using xev and pressing the appropriate buttons. I figured out the keysyms mainly by reading the xmodmap -pke output. (The Wiki scan codes diagram [1] and table [2] were not accurate for my machine according to xev.) [1]: http://wiki.laptop.org/go/OLPC_Keyboard_layouts [2]: http://wiki.laptop.org/go/Scan_code_table At any rate, after you perform this remapping, MouseKeys can be turned on by pressing 'Shift-LeftGrabby' and can be used by holding Shift and pressing arrow keys (or Shift-Enter to click). All this works great except for the fact that the resulting mouse motion is very slow (being capped at 30 px/sec in the default MouseKeys configuration.) To address this, I wrote a small 'mkspeed' which is available in source form at http://dev.laptop.org/git/users/mstone/mkspeed The relevant code is http://dev.laptop.org/git?p=users/mstone/mkspeed;a=blob;f=mkspeed.c;hb=HEAD Unfortunately, it doesn't work and I can't tell why. (This is my first Xkb program.) Consequently, help would be greatly appreciated. If you're interested, reference documentation is available [3]; see sections 4.5, 4.6, and 16.3.5 for the important details. [3]: http://www.xfree86.org/current/XKBproto.pdf Alternately, if mkspeed proves to be difficult to complete, we can probably just raise the default speed limit in the Xkb implementation in the X server. Michael P.S. - If you know some nice Xkb folks who might like to help out, feel free to forward this email to them. Or tell me why I'm an idiot and why this is a terrible way to work around the jumpy touchpad bugs. P.P.S. - Eben - you might start thinking about how we should actually be exposing this sort of feature in the UI. _______________________________________________ Devel mailing list [email protected] http://lists.laptop.org/listinfo/devel
