tech-x11 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Xorg keymap and wskbd keymap



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Jun 20, 2010, at 3:42 AM, Matthieu Herrb wrote:

May I try to share my views on the subject ?

- the use of PC-AT inspired keycodes in X for all systems was a design
 decision back in the  XFreee86 times. It helped to keep the xf86 DDX
 code for the non-xkb case simple.
 But, given the limitations of this encoding (terrible "extended"
 keycodes, lack of standard mappings for extra keys,...) this was
 probably a mistake.

Yeah, it's a mess.

- So I've been thinking about moving away from xf86-input-keyboard for
 wscons too. This means writing a new xf86-input-wskbd input driver
 (or add keyboard support to the existing xf86-input-ws driver
 which can already replace xf86-input-mouse for wsmouse). This
 driver, together with a set of xkb keycode descriptions would allow
 to simplify the keyboard mapping process, by  removing the
 extra-layer of going through this awkward PC-AT emulation.

Sounds like the way to go.

- In the context of the X server, wsmux is a terrible design
 choice. It hides all keyboards behind one single device, with one
 single keymap. With XInput2 and XKB, the X server has the
 opportunity to configure each keyboard individually (with different
 layouts for example, which is one of the reasons I sometimes keep 2
 keyboards connected to a machine). Thus I think that BSD kernels
 should either give up on wsmux or change the mux protocol to add an
 identifier of the device that originally generated the event.

Or at least let all members in the mux use the same set of scancodes. I rather like the idea - I can hotplug USB keyboards and similar stuff without the Xserver needing to know or care. If I want the keyboards visible to the Xserver instead of hiding behind the mux I can still give each one its own xorg.conf entry. Of course things still get screwy if you have different layout variants on the same mux.

BTW the same remark applies to wsmux for pointing devices (wsmouse).

For basic pointing devices it works Just Fine(tm).
Which reminds me - did you guys add any code for tablet and touchscreen support? I have a tablet sitting her, sooner or later I'll have to get it supported properly and I'd rather not re-invent the wheel.

So if someone wants to grab the flag, and start implementing a wscons
specific X input driver, you'll have my support.

So much work, unfortunately real life needs way too much attention.

have fun
Michael


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iQEVAwUBTB6w7MpnzkX8Yg2nAQJ7wQf/Wuead/Wnd0NnmM8mN0KRs0xBDCaOeaFQ
1/SLmRBk0SA3ac0L5gUVQBNluied+vV2Dm4zIOfJ4gqTAnTXcktl0AyWQaiJ7pin
8QITLwnjwg/iWLnWk36r2ooLUmaorMLpzm+GyRNvaLEDKuTjXic8Zrej2Sjz32LB
4gu6Vg3Fw5Dg857Pywu20WGveXj/9ovm4QLInZQD1uETs6lKRyqDYQUdgGSWgxdD
X2CAMVCf92eQZuW6yQSMXhJsHSz7qtn3sh2621sAEXbMCFPQtdciJ1bdMcYxWmKl
Og4Xlo68lDK7Ixj6Ema1uJxCx1hAxKqpYU1HBX6Da3GUQ1K+z64M0w==
=Y2ly
-----END PGP SIGNATURE-----


Home | Main Index | Thread Index | Old Index