[Bug 28168] New: VK_OEM_3 (0xC0) not converted into (0xC0) if US keyboard requested

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Aug 24 03:03:36 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=28168

           Summary: VK_OEM_3 (0xC0) not converted into (0xC0) if US
                    keyboard requested
           Product: Wine
           Version: 1.3.26
          Platform: x86
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: winex11.drv
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: Sebastian.Riemer at gmx.de


E.g.: Carmageddon TDR 2000 requests an US keyboard layout no matter for which
language version of the game. It also gets this for most keys.

But for the cheating console the VK_OEM_3 (0xC0) is needed and
MapVirtualKeyExW() in dlls/user32/input.c has to return 0xC0, too.

But instead it returns 0x5E (^) on my German KDE4 openSUSE 11.3 amd64 system -
so this key isn't converted to US keyboard layout.
On my German Windows XP it works as expected (0xC0 is returned).

I've also tried to enable the KDE4 keyboard layouts and to switch to US layout
with that, but this didn't help.


Here is my dirty fix with which I've tested it:

UINT WINAPI MapVirtualKeyExW(UINT code, UINT maptype, HKL hkl)
{
    TRACE_(keyboard)("(%X, %d, %p)\n", code, maptype, hkl);

    /* dirty fix for testing VK_OEM_3 */
    if (code == 0xC0)
        return 0xC0;

    return USER_Driver->pMapVirtualKeyEx(code, maptype, hkl);
}

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list