http://bugs.winehq.org/show_bug.cgi?id=3531
Summary: delete button produces "delete," Product: Wine Version: CVS Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P4 Component: wine-x11driver AssignedTo: wine-bugs@winehq.org ReportedBy: zhilla@spymac.com
using hr (croatian) keyboard. also tried slovenian, and read about people having problem with hungarian and certain german charsets. (i think they all inherit some keys from an xorg template or something like that) pressing "delete" button (one not on numpad) does not just delete next character, instead it outputs "delete," (like replacing next char with "," and moving cursor) - it seems numlock button is affecting this. it does not happen in regular xorg apps, or in crossover office. i was digging around and found a hack that fixes the issue. please accept it as a clue to what is wrong, and not the real fix.
--- dlls/x11drv/keyboard.c.orig 2005-05-05 23:33:23.000000000 +0200 +++ dlls/x11drv/keyboard.c 2005-05-05 23:38:44.000000000 +0200 @@ -1067,11 +1067,14 @@ else XLookupString(e, NULL, 0, &keysym, NULL);
- if ((keysym >= 0xFFAE) && (keysym <= 0xFFB9) && (keysym != 0xFFAF) - && (e->state & NumLockMask)) - /* Only the Keypad keys 0-9 and . send different keysyms - * depending on the NumLock state */ - return nonchar_key_vkey[keysym & 0xFF]; + if (e->state & NumLockMask) /* NumLock is active */ + { if (keysym == 0xFFAC) /* Numeric Del pressed */ + return keyc2vkey[0x3B]; /* comma */ + if ((keysym >= 0xFFAE) && (keysym <= 0xFFB9) && (keysym != 0xFFAF)) + /* Only the Keypad keys 0-9 and . send different keysyms + * depending on the NumLock state */ + return nonchar_key_vkey[keysym & 0xFF]; + }
TRACE_(key)("e->keycode = %x\n", e->keycode);