Keysym additions.

Daniel Stone daniel at fooishbar.org
Thu Sep 21 13:10:18 PDT 2006


On Thu, Sep 21, 2006 at 03:52:28PM -0400, Jim Gettys wrote:
> On Thu, 2006-09-21 at 22:24 +0300, Daniel Stone wrote:
> > On Thu, Sep 21, 2006 at 03:12:51PM -0400, Jim Gettys wrote:
> > > They aren't modifiers.  They are bona-fide keys.
> > 
> > Ah, 0.5.  So you have seventy function keys, or?
> 
> Actually, we have F1-F12, in 3 groups.  But the X keysym list has F1-35.
> So I was being 

Why not take F13-F24 for this?

> > > I'm not sure what you mean.
> > 
> > XKB supports 'pointer keys'.  Unless I'm very much mistaken, you can
> > simulate button presses, so would you not be able to use the Grab keys
> > to generate a button press, and have it locking?  That would presumably
> > give you the desired 'grab' behaviour, unless your grabbing UI is
> > something different from the usual 'press a mouse button and start
> > moving the mouse'.
> 
> Think of panning around on a Google map, and you'll have the idea.

Right.  Where you click, and then drag.  So generating a button press
seems appropriate?

If not, it'll need to be YAModifier, given that you'll need something
useful in the state component of the MotionNotifies (or KeyPresses if
you're really masochistic).

> > > Hyper is usually mapped to the Microsoft Windows key.
> > > 
> > > I'm referring to the (typically labeled blue) Fn key you find on
> > > keyboards that let you synthesize other keys.  Rather than it being
> > > entirely dead to the window system, we see no reason to not allow it to
> > > be a fully fledged key and usable in other ways.
> > 
> > Right, I'm aware of the Fn key.  But given that its behaviour is that of
> > a modifier, it would presumably be best to find and steal a modifier
> > before adding our own.  
> 
> No, Fn is not a modifier in the conventional sense at all; it causes a
> keyboard to send different scan-codes entirely; on a laptop, that's how
> you get to many of the keys that were on PC-105 keyboards.

Right.  I just figured otherwise when you mentioned that it'd also send
a keypress event, instead of just silently modifying the scancodes you
get.

(I'm typing this on a laptop with an Fn key right now.  I've used one of
those as my primary machine for years now.  Often sole machine.)

> > Bear in mind that this would be a special case
> > for OLPC as no-one else that I'm aware of sends Fn; they all do it in
> > hardware.
> 
> We'll do it in hardware as well; the difference is just you'll also get
> a key event when the Fn key is pressed.

I'd be lying if I said that I saw how that'd be useful, unless you got
the original scancode and Fn acted as a modifier, but there you go.

> > > Maybe: I'm not enough of a keyboard guru to know exactly the semantics
> > > of Mode_switch.
> > > 
> > > And we have two of these keys.
> > 
> > Well, the comment next to mode switch says 'character set switch'. ;)
> > 
> > We could probably add another, though.
> 
> If people who understand input methods agree, that sounds sane.
> 
> Or maybe both such keys should have Mode_switch defined in addition to a
> keysym distinguishing the two keys.

Generating multiple keysyms from one keypress is XKB 2.0 stuff, unless
you're going to hack this in in your driver.  You could probably use
XK_ISO_{Prev,Next}_Group for this.  If you were really keen, you could
just use this to change the layout, and listen to a
MapNotify/NewKeyboardNotify.  This would actually be rather sensible if
you needed to change the map ...

(This is how desktops deal with multiple layouts.)

Cheers,
Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.x.org/archives/xorg/attachments/20060921/4b8e8bcd/attachment.pgp>


More information about the xorg mailing list