imm32: Create the IME UI window with the IME instance so the registered class can...
authorAric Stewart <aric@codeweavers.com>
Wed, 16 Apr 2008 19:30:13 +0000 (14:30 -0500)
committerAlexandre Julliard <julliard@winehq.org>
Thu, 17 Apr 2008 09:39:33 +0000 (11:39 +0200)
dlls/imm32/imm.c

index 4eac53a35506f9eff2ae7e10cfe376da6038cf85..c267a70cf9d14b5891416537ae54e9c8a12b47d8 100644 (file)
@@ -92,7 +92,6 @@ typedef struct _tagIMMThreadData {
     HWND hwndDefault;
 } IMMThreadData;
 
-static HANDLE hImeInst;
 static DWORD tlsIndex = 0;
 static struct list ImmHklList = LIST_INIT(ImmHklList);
 
@@ -294,7 +293,6 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpReserved)
     switch (fdwReason)
     {
         case DLL_PROCESS_ATTACH:
-            hImeInst = hInstDLL;
             IMM_RegisterMessages();
             tlsIndex = TlsAlloc();
             IMM_InitThreadData();
@@ -1800,8 +1798,8 @@ BOOL WINAPI ImmSetOpenStatus(HIMC hIMC, BOOL fOpen)
     {
         /* create the ime window */
         data->imeWnd = CreateWindowExW( WS_EX_TOOLWINDOW,
-                    data->immKbd->imeClassName,
-                    NULL, WS_POPUP, 0, 0, 1, 1, 0, 0, hImeInst, 0);
+                    data->immKbd->imeClassName, NULL, WS_POPUP, 0, 0, 1, 1, 0,
+                    0, data->immKbd->hIME, 0);
         SetWindowLongW(data->imeWnd, IMMGWL_IMC, (LONG)data);
         IMM_GetThreadData()->hwndDefault = data->imeWnd;
     }