Commit 0e5d5b37 authored by Aric Stewart's avatar Aric Stewart Committed by Alexandre Julliard

imm: More correctly handle the presence of the default IME input window on IME open and close.

parent 31876695
...@@ -192,19 +192,17 @@ static void ImmInternalSetOpenStatus(BOOL fOpen) ...@@ -192,19 +192,17 @@ static void ImmInternalSetOpenStatus(BOOL fOpen)
{ {
TRACE("Setting internal state to %s\n",(fOpen)?"OPEN":"CLOSED"); TRACE("Setting internal state to %s\n",(fOpen)?"OPEN":"CLOSED");
root_context->IMC.fOpen = fOpen; if (root_context->IMC.fOpen && fOpen == FALSE)
root_context->bInternalState = fOpen; {
if (fOpen == FALSE)
{
ShowWindow(hwndDefault,SW_HIDE); ShowWindow(hwndDefault,SW_HIDE);
ImmDestroyIMCC(root_context->IMC.hCompStr); ImmDestroyIMCC(root_context->IMC.hCompStr);
root_context->IMC.hCompStr = NULL; root_context->IMC.hCompStr = NULL;
} }
else
ShowWindow(hwndDefault, SW_SHOWNOACTIVATE);
ImmInternalSendIMENotify(IMN_SETOPENSTATUS, 0); root_context->IMC.fOpen = fOpen;
root_context->bInternalState = fOpen;
ImmInternalSendIMENotify(IMN_SETOPENSTATUS, 0);
} }
static int updateField(DWORD origLen, DWORD origOffset, DWORD currentOffset, static int updateField(DWORD origLen, DWORD origOffset, DWORD currentOffset,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment