On Thu, 2008-05-29 at 01:32 +0300, Tuomo Valkonen wrote:
> On 2008-05-28 14:02 +0000, Tuomo Valkonen wrote:
> > The original complainer
> > should therefore have no problems on the version of X I'm running
> > (from Etch), because the server simply masks the groups, or at
> > least the one tied to Mode_Switch, and for some reason Ion actually 
> > masks the state with KNOWN_MODIFIERS_MASK in the binding search code
> > although it does not ask as to grab things with other modifiers set.
> 
> Actually, making Ion print things instead of relying on xev 
> alone, it appears that the X server does not set the Mode_Switch 
> bit (0x2000) on key events for grabbed keys, although it does set 
> it in events for non-grabbed keys (that xev can catch). Thus the 
> stray KNOWN_MODIFIERS_MASK code actually does nothing, and the 
> X server completely hides Mode_Switch (and any modifiers bound to
> it) in events for grabbed keys -- but only for them. On my system, 
> that is. Smells like a rotting pile of kludges...

Yeah, grabbed keys are kluged so you don't see group modifiers.  This is
all spelled out in <http://www.xfree86.org/current/XKBproto.pdf> section
12.3.  I still haven't worked out how to ignore group locking when
looking at non-grab events.

Ben.

-- 
Ben Hutchings
Everything should be made as simple as possible, but not simpler.
                                                           - Albert Einstein

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to