|
From: | Adrian Robert |
Subject: | Re: [Gnustep-cvs] gnustep/core/back/Source/x11 XGServerEvent.m |
Date: | Fri, 03 Sep 2004 11:44:20 -0400 |
That said, I think some users may find useful the functionality the patch is to offer. On the other hand, as mentioned above, I still feel dubious about the way of the implementation. So, to resolve this, how about making a compilation or runtime switch which allows the user to select the old behavior or the new one?
We should just get it working properly. In any case, despite your reservations about whether it is perfect, I don't think my changes as they were would make behavior any worse or more unexpected than it was previously. However, I made two additional changes, in the patch attached. First, in the main keystroke processing path, the KeySym is now determined taking full account of the modifier state as you suggested was necessary. (I agree, thanks for pointing it out.) Second, in the KeymapNotify path (called when keys are held down when you give a window focus), I simplified the code a bit. As far as I can tell, it will only fail in the case where a GNUstep modifier key is set to a keysym accessible only through a key combination (perhaps encountered if you use one of your modifier keys with more than one symbol). Note that this case would not have worked in either the main path or the KeymapNotify path before. If you want to improve this code, you are welcome to. I put a comment there which describes an approach I think would work, but it would slow things down and I am not sure of the frequency this case occurs.
I never meant that the user should specify a user default value via a cryptic code. I think your idea, allowing the user to specify adefault value by a literal string, is good. But connecting it directlyto a KeySym is a different matter. I'm wondering why some people are strongly tempted to identify a key with a symbol on the top of it, or a KeySym. As xmodmap shows, such an identification doesn't make sense at all...
What should a literal string be connected to if not a KeySym? I guess a modifier name is one possibility. I'm not sure how this interacts with the philosophy of GNUstep given the way some of the current documentation on the keyboard is worded. It would be a more major change than what I have been advocating.
-Adrian <x11_modifier_2.patch>
x11_modifier_2.patch
Description: Text Data
[Prev in Thread] | Current Thread | [Next in Thread] |