From 5ff0ef403e3299541da55da4b6e025bc57883423 Mon Sep 17 00:00:00 2001 From: Katayama Hirofumi MZ Date: Sun, 9 Apr 2023 15:19:47 +0900 Subject: [PATCH] [NTUSER] IntImmActivateLayout: Set CI_IMMACTIVATE if not pImeWnd (#5231) In IntImmActivateLayout function, if pImeWnd was NULL and pti->spDefaultImc was non-NULL, then set CI_IMMACTIVATE flag. CORE-11700 --- win32ss/user/ntuser/kbdlayout.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/win32ss/user/ntuser/kbdlayout.c b/win32ss/user/ntuser/kbdlayout.c index 2f9ea599ab7..f3971cf5c67 100644 --- a/win32ss/user/ntuser/kbdlayout.c +++ b/win32ss/user/ntuser/kbdlayout.c @@ -650,6 +650,11 @@ IntImmActivateLayout( co_IntSendMessage(hImeWnd, WM_IME_SYSTEM, IMS_ACTIVATELAYOUT, (LPARAM)pKL->hkl); UserDerefObjectCo(pImeWnd); } + else if (pti->spDefaultImc) + { + /* IME Activation is needed */ + pti->pClientInfo->CI_flags |= CI_IMMACTIVATE; + } UserAssignmentLock((PVOID*)&(pti->KeyboardLayout), pKL); pti->pClientInfo->hKL = pKL->hkl;