Added a first-cut version of MapVirtualKeyExW() that has the same
functionality (and limitations) as the ANSI version.
diff --git a/dlls/user/user32.spec b/dlls/user/user32.spec
index 64e9015..f1d773e 100644
--- a/dlls/user/user32.spec
+++ b/dlls/user/user32.spec
@@ -609,7 +609,7 @@
@ stdcall EnumDisplaySettingsA(str long ptr) EnumDisplaySettingsA
@ stdcall EnumDisplaySettingsW(wstr long ptr ) EnumDisplaySettingsW
@ stdcall GetWindowRgn(long long) GetWindowRgn
-@ stub MapVirtualKeyExW
+@ stdcall MapVirtualKeyExW(long long long) MapVirtualKeyExW
@ stub RegisterServicesProcess
@ stdcall SetWindowRgn(long long long) SetWindowRgn
@ stdcall ToUnicodeEx(long long ptr wstr long long long) ToUnicodeEx
diff --git a/include/winuser.h b/include/winuser.h
index 4d486fd..e0a2439 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -3592,6 +3592,7 @@
UINT WINAPI MapVirtualKeyW(UINT,UINT);
#define MapVirtualKey WINELIB_NAME_AW(MapVirtualKey)
UINT WINAPI MapVirtualKeyExA(UINT,UINT,HKL);
+UINT WINAPI MapVirtualKeyExW(UINT,UINT,HKL);
#define MapVirtualKeyEx WINELIB_NAME_AW(MapVirtualKeyEx)
BOOL WINAPI MapDialogRect(HWND,LPRECT);
INT WINAPI MapWindowPoints(HWND,HWND,LPPOINT,UINT);
diff --git a/windows/input.c b/windows/input.c
index 82225b2..afa45fa 100644
--- a/windows/input.c
+++ b/windows/input.c
@@ -687,6 +687,16 @@
return MapVirtualKey16(code,maptype);
}
+/******************************************************************************
+ * MapVirtualKeyExW (USER32.???)
+ */
+UINT WINAPI MapVirtualKeyExW(UINT code, UINT maptype, HKL hkl)
+{
+ if (hkl)
+ FIXME_(keyboard)("(%d,%d,0x%08lx), hkl unhandled!\n",code,maptype,(DWORD)hkl);
+ return MapVirtualKey16(code,maptype);
+}
+
/****************************************************************************
* GetKBCodePage (USER32.246)
*/