On Wed, Nov 20, 2002 at 10:10:34PM +0100, Herbert Voss wrote:
> KeyRelease event, serial 27, synthetic NO, window 0x3e00001,
> root 0x3e, subw 0x0, time 22316297, (-398,315), root:(673,842),
> state 0x0, keycode 48 (keysym 0xe4, adiaeresis), same_screen YES,
> XLookupString gives 1 characters: "�"
OK, cool.
> -> nothing happens in the main gui:--------------------------------
>
> Press key 65535 text "�", ascii "228"
> KeySym is sym empty in getSymbolName()
line 160 in lyxfunc.C
> getSymbolName() -> �
getSymbolName() in QLyXKeySym.C
> �
OK, we must be exiting because ->isModifier() returns true. That means
that Qt::Key_unknown is being returned for your keypress. Is this true
(as in, have you proved this) ?
Now, this seems broken for Qt in the first place. But we have to work
with it.
What values are returned in text(), key(), and ascii(), for the press of
a-umlaut ?
It seems that the keypress is unknown, but the actual text produced
stored in text() is OK. Yes ?
So, can we not make this change :
bool QLyXKeySym::isModifier() const
{
- return q_is_modifier(key_);
+ return text_.empty() && q_is_modifier(key_);
}
?? A modifier should not have associated text.
If this change *alone* doesn't work, please explain why, with the values
of text(), key(), and ascii() at each step.
thanks
john
--
Khendon's Law: If the same point is made twice by the same person,
the thread is over.