From: Ziia Shi <mkrsym1@gmail.com> --- dlls/imm32/ime.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/dlls/imm32/ime.c b/dlls/imm32/ime.c index 65f46f20550..e7ac5ad8661 100644 --- a/dlls/imm32/ime.c +++ b/dlls/imm32/ime.c @@ -505,8 +505,16 @@ BOOL WINAPI ImeSelect( HIMC himc, BOOL select ) BOOL WINAPI ImeSetActiveContext( HIMC himc, BOOL flag ) { - TRACE( "himc %p, flag %#x stub!\n", himc, flag ); - return TRUE; + INPUTCONTEXT *ctx; + ULONG_PTR ret; + + TRACE( "himc %p, flag %#x semi-stub!\n", himc, flag ); + + if (!(ctx = ImmLockIMC( himc ))) return FALSE; + ret = NtUserCallTwoParam( (ULONG_PTR)ctx->hWnd, (ULONG_PTR)flag, NtUserCallTwoParam_SetIMEEnabled ); + ImmUnlockIMC( himc ); + + return ret; } BOOL WINAPI ImeProcessKey( HIMC himc, UINT vkey, LPARAM lparam, BYTE *state ) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10007