imm32: Don't hide/show IME UI window in ImmSetCompositionWindow.

This commit is contained in:
Rémi Bernon 2023-04-14 09:17:17 +02:00 committed by Alexandre Julliard
parent 3a9e237bdf
commit 2fda6abfc4
2 changed files with 1 additions and 11 deletions

View file

@ -2629,9 +2629,7 @@ BOOL WINAPI ImmSetCompositionStringW(
*/
BOOL WINAPI ImmSetCompositionWindow( HIMC himc, COMPOSITIONFORM *composition )
{
BOOL reshow = FALSE;
INPUTCONTEXT *ctx;
HWND ui_hwnd;
TRACE( "himc %p, composition %s\n", himc, debugstr_composition( composition ) );
@ -2641,14 +2639,6 @@ BOOL WINAPI ImmSetCompositionWindow( HIMC himc, COMPOSITIONFORM *composition )
ctx->cfCompForm = *composition;
ctx->fdwInit |= INIT_COMPFORM;
if ((ui_hwnd = get_ime_ui_window()) && IsWindowVisible( ui_hwnd ))
{
reshow = TRUE;
ShowWindow( ui_hwnd, SW_HIDE );
}
if (ui_hwnd && reshow) ShowWindow( ui_hwnd, SW_SHOWNOACTIVATE );
ImmNotifyIME( himc, NI_CONTEXTUPDATED, 0, IMC_SETCOMPOSITIONWINDOW );
SendMessageW( ctx->hWnd, WM_IME_NOTIFY, IMN_SETCOMPOSITIONWINDOW, 0 );

View file

@ -6221,7 +6221,7 @@ static void test_ImmSetCompositionWindow(void)
memset( &comp_form, 0xcd, sizeof(comp_form) );
ok_ret( 1, ImmSetCompositionWindow( himc, &comp_form ) );
process_messages();
todo_wine ok_seq( set_composition_window_0_seq );
ok_seq( set_composition_window_0_seq );
ok_eq( INIT_COMPFORM, ctx->fdwInit, UINT, "%u" );
check_composition_form( &ctx->cfCompForm, &comp_form );
ok_ret( 1, IsWindowVisible( ime_windows.ime_ui_hwnd ) );