lack of GetModifierMapping/SetModifierMapping symmetry

Pierre Ossman ossman at cendio.se
Mon May 4 00:38:12 PDT 2009


On Fri, 1 May 2009 15:40:50 +1000
Peter Hutterer <peter.hutterer at who-t.net> wrote:

> On Thu, Apr 30, 2009 at 09:14:43AM +0200, Pierre Ossman wrote:
> > 
> > In which case I'd consider the mechanism for adding new keyboards
> > broken. If the idea is that the modifier mapping should be global, then
> > adding a new keyboard with a different mapping should either a) change
> > the global mapping, or b) overwrite the mapping on the new keyboard
> > with the global one.
> 
> The modifier mapping isn't global. it applies to the core keyboard which is
> defined by the core protocol. All core calls only apply to this keyboard.
> In the past this was't a problem since we only had one keyboard anyway.
> 

Since the mapping is applied to every (core) keyboard, I'd consider it
global in any practical sense, even though there are multiple places
where it is stored.

> > 
> > This is not a behaviour that has been with us for years. It was added
> > for xserver 1.3. So apparently modifying just the active keyboard was
> > not a major problem until then.
> 
> The active keyboard never changed in the past. that's essentially the big
> difference.
> 

How was multiple keyboards handled internally before that? Perhaps
there are some things there that can make sense even today for the VNC
case.

> 
> Is the VNC keyboard an extension device or does it replace inputInfo.keyboard?
> 

It's an extension device. It is a core keyboard, but it only activates
via SwitchCoreKeyboard(). Overwriting inputInfo.keyboard does not seem
to be the correct thing to do when VNC is just a module attaching to an
existing X server.

Rgds
-- 
Pierre Ossman            OpenSource-based Thin Client Technology
System Developer         Telephone: +46-13-21 46 00
Cendio AB                Web: http://www.cendio.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.x.org/archives/xorg-devel/attachments/20090504/a9c7cfd2/attachment-0001.pgp 


More information about the xorg-devel mailing list