https://git.reactos.org/?p=reactos.git;a=commitdiff;h=5ff0ef403e3299541da55da4b6e025bc57883423

commit 5ff0ef403e3299541da55da4b6e025bc57883423
Author:     Katayama Hirofumi MZ <[email protected]>
AuthorDate: Sun Apr 9 15:19:47 2023 +0900
Commit:     GitHub <[email protected]>
CommitDate: Sun Apr 9 15:19:47 2023 +0900

    [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;

Reply via email to