Rémi Bernon : user32: Implement KLF_ACTIVATE flag in LoadKeyboardLayoutW.

Alexandre Julliard julliard at winehq.org
Fri May 7 15:42:04 CDT 2021


Module: wine
Branch: master
Commit: bda517c08517f048b68a6f7cf152ef836b21a715
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=bda517c08517f048b68a6f7cf152ef836b21a715

Author: Rémi Bernon <rbernon at codeweavers.com>
Date:   Fri May  7 10:29:45 2021 +0200

user32: Implement KLF_ACTIVATE flag in LoadKeyboardLayoutW.

Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/user32/input.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index 6f4636dffdb..fc928af6723 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -1540,7 +1540,16 @@ BOOL WINAPI UnregisterHotKey(HWND hwnd,INT id)
  */
 HKL WINAPI LoadKeyboardLayoutW( const WCHAR *name, UINT flags )
 {
+    DWORD tmp;
+    HKL layout;
+
     FIXME_(keyboard)( "name %s, flags %x, semi-stub!\n", debugstr_w( name ), flags );
+
+    tmp = wcstoul( name, NULL, 16 );
+    layout = UlongToHandle( tmp );
+
+    if ((flags & KLF_ACTIVATE) && ActivateKeyboardLayout( layout, 0 )) return layout;
+
     /* FIXME: semi-stub: returning default layout */
     return get_locale_kbd_layout();
 }




More information about the wine-cvs mailing list