[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Xorg keymap and wskbd keymap
-----BEGIN PGP SIGNED MESSAGE-----
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
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.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
-----END PGP SIGNATURE-----
Main Index |
Thread Index |