On 3/30/06, Peter Åstrand astrand@cendio.se wrote:
On Thu, 30 Mar 2006, Wine Bugs wrote:
http://bugs.winehq.org/show_bug.cgi?id=1181
------- Additional Comments From Speeddymon@gmail.com 2006-30-03 10:26 -------
[cut]
Hi, now you know about this bug. As the comment says, it might be possible to reuse some parts from the rdesktop implementation.
I'm not saying that it will be easy, though. To be honest, I think bug 4923, and many others, are more important. Instead of fixing Wine, it might be possible to enhance Xvnc so that it can "emulate" a physical Xserver with a certain physical keyboard.
I don't know the problem with the bug 4923 [1], but when we fix the bug 1181 [2] and make Wine use KeySym, this race condition won't occur since X11DRV_ToUnicodeEx function will not use AltGrMask or any other global variable concerning the keyboard state, only a table like "ksym2vkey". Besides, applications that use X server API directly don't have this behavior. --- [1] http://bugs.winehq.org/show_bug.cgi?id=4923 [2] http://bugs.winehq.org/show_bug.cgi?id=1181
I'm trying to solve the bug 2400 [3] and looking more closely the code in dlls/x11drv/keyboard.c I started thinking in rewriting this code to use directly keysyms sent by X server to translate XEvents to vkeys instead of the currently "xevent->keycode->keysym->keycode->vkey/character" way as implemented from the X11DRV_KeyEvent to X11DRV_ToUnicodeEx functions. --- [3] http://bugs.winehq.org/show_bug.cgi?id=2400
Regards,
Peter Åstrand ThinLinc Chief Developer Cendio http://www.cendio.se Teknikringen 3 583 30 Linköping Phone: +46-13-21 46 00
Cheers, Augusto Arcoverde da Rocha