From e8ccc8516f19b50531675793f5f47c11189fd845 Mon Sep 17 00:00:00 2001 From: Katayama Hirofumi MZ Date: Sun, 14 Aug 2022 10:53:58 +0900 Subject: [PATCH] [USER32] Call CliImmInitializeHotKeys on LoadKeyboardLayoutW epilogue (#4604) Enable the IME hotkeys. - Call CliImmInitializeHotKeys.SETIMEHOTKEY_ADD on IntLoadKeyboardLayout epilogue. CORE-11700 --- win32ss/user/user32/windows/input.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/win32ss/user/user32/windows/input.c b/win32ss/user/user32/windows/input.c index dd396999e3b..8d4d3ad8732 100644 --- a/win32ss/user/user32/windows/input.c +++ b/win32ss/user/user32/windows/input.c @@ -656,6 +656,7 @@ IntLoadKeyboardLayout( WCHAR wszRegKey[256] = L"SYSTEM\\CurrentControlSet\\Control\\Keyboard Layouts\\"; WCHAR wszLayoutId[10], wszNewKLID[10]; HKEY hKey; + HKL hNewKL; /* LOWORD of dwhkl is Locale Identifier */ dwhkl = LOWORD(wcstoul(pwszKLID, NULL, 16)); @@ -712,9 +713,11 @@ IntLoadKeyboardLayout( ZeroMemory(&ustrKbdName, sizeof(ustrKbdName)); RtlInitUnicodeString(&ustrKLID, pwszKLID); - return NtUserLoadKeyboardLayoutEx(NULL, 0, &ustrKbdName, - NULL, &ustrKLID, - dwhkl, Flags); + hNewKL = NtUserLoadKeyboardLayoutEx(NULL, 0, &ustrKbdName, + NULL, &ustrKLID, + dwhkl, Flags); + CliImmInitializeHotKeys(SETIMEHOTKEY_ADD, hNewKL); + return hNewKL; } /*