Aric Stewart aric@codeweavers.com writes:
- if (data->imeWnd == NULL)
- if (defWnd == NULL) { /* create the ime window */
data->imeWnd = CreateWindowExW( WS_EX_TOOLWINDOW,
defWnd = CreateWindowExW( WS_EX_TOOLWINDOW, data->immKbd->imeClassName, NULL, WS_POPUP, 0, 0, 1, 1, 0, 0, data->immKbd->hIME, 0);
SetWindowLongPtrW(data->imeWnd, IMMGWL_IMC, (LONG_PTR)data);
IMM_GetThreadData()->hwndDefault = data->imeWnd;
SetWindowLongPtrW(defWnd, IMMGWL_IMC, (LONG_PTR)data);
IMM_GetThreadData()->hwndDefault = defWnd;
So now, shouldn't you be resetting IMMGWL_IMC at some point?