Module: wine Branch: master Commit: 2ea559b8b2dfa6f16a8e2544ed2e92c0a44c65b5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=2ea559b8b2dfa6f16a8e2544ed...
Author: Aric Stewart aric@codeweavers.com Date: Thu Mar 27 11:04:30 2008 -0500
imm32: Have both ImmInternalPostIMEMessage and ImmInternalSendIMENotify receive an InputContextData parameter instead of relaying on root_context.
---
dlls/imm32/imm.c | 44 ++++++++++++++++++++++---------------------- 1 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/dlls/imm32/imm.c b/dlls/imm32/imm.c index 89f7c47..2785922 100644 --- a/dlls/imm32/imm.c +++ b/dlls/imm32/imm.c @@ -82,7 +82,7 @@ static UINT WM_MSIME_DOCUMENTFEED; static LRESULT WINAPI IME_WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); static void UpdateDataInDefaultIMEWindow(HWND hwnd, BOOL showable); -static void ImmInternalPostIMEMessage(UINT, WPARAM, LPARAM); +static void ImmInternalPostIMEMessage(InputContextData*, UINT, WPARAM, LPARAM); static void ImmInternalSetOpenStatus(BOOL fOpen); static HIMCC updateResultStr(HIMCC old, LPWSTR resultstr, DWORD len);
@@ -100,7 +100,7 @@ static VOID IMM_PostResult(InputContextData *data) ResultStr = (LPWSTR)(compdata + compstr->dwResultStrOffset);
for (i = 0; i < compstr->dwResultStrLen; i++) - ImmInternalPostIMEMessage (WM_IME_CHAR, ResultStr[i], 1); + ImmInternalPostIMEMessage (root_context, WM_IME_CHAR, ResultStr[i], 1);
ImmUnlockIMCC(root_context->IMC.hCompStr);
@@ -173,20 +173,20 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpReserved) }
/* for posting messages as the IME */ -static void ImmInternalPostIMEMessage(UINT msg, WPARAM wParam, LPARAM lParam) +static void ImmInternalPostIMEMessage(InputContextData *data, UINT msg, WPARAM wParam, LPARAM lParam) { HWND target = GetFocus(); if (!target) - PostMessageW(root_context->IMC.hWnd,msg,wParam,lParam); + PostMessageW(data->IMC.hWnd,msg,wParam,lParam); else PostMessageW(target, msg, wParam, lParam); }
-static LRESULT ImmInternalSendIMENotify(WPARAM notify, LPARAM lParam) +static LRESULT ImmInternalSendIMENotify(InputContextData *data, WPARAM notify, LPARAM lParam) { HWND target;
- target = root_context->IMC.hWnd; + target = data->IMC.hWnd; if (!target) target = GetFocus();
if (target) @@ -221,7 +221,7 @@ static void ImmInternalSetOpenStatus(BOOL fOpen) root_context->IMC.fOpen = fOpen; root_context->bInternalState = fOpen;
- ImmInternalSendIMENotify(IMN_SETOPENSTATUS, 0); + ImmInternalSendIMENotify(root_context, IMN_SETOPENSTATUS, 0); }
static int updateField(DWORD origLen, DWORD origOffset, DWORD currentOffset, @@ -1501,7 +1501,7 @@ BOOL WINAPI ImmNotifyIME( root_context->IMC.hCompStr = ImmCreateBlankCompStr();
if (send) - ImmInternalPostIMEMessage(WM_IME_COMPOSITION, 0, + ImmInternalPostIMEMessage(root_context, WM_IME_COMPOSITION, 0, GCS_COMPSTR); rc = TRUE; } @@ -1542,15 +1542,15 @@ BOOL WINAPI ImmNotifyIME(
root_context->bRead = FALSE;
- ImmInternalPostIMEMessage(WM_IME_COMPOSITION, 0, + ImmInternalPostIMEMessage(root_context, WM_IME_COMPOSITION, 0, GCS_COMPSTR);
- ImmInternalPostIMEMessage(WM_IME_COMPOSITION, + ImmInternalPostIMEMessage(root_context, WM_IME_COMPOSITION, param, GCS_RESULTSTR|GCS_RESULTCLAUSE); }
- ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION, 0, 0); + ImmInternalPostIMEMessage(root_context, WM_IME_ENDCOMPOSITION, 0, 0); root_context->bInComposition = FALSE; } break; @@ -1653,7 +1653,7 @@ BOOL WINAPI ImmSetCompositionFontA(HIMC hIMC, LPLOGFONTA lplf) MultiByteToWideChar(CP_ACP, 0, lplf->lfFaceName, -1, data->IMC.lfFont.W.lfFaceName, LF_FACESIZE);
- ImmInternalSendIMENotify(IMN_SETCOMPOSITIONFONT, 0); + ImmInternalSendIMENotify(data, IMN_SETCOMPOSITIONFONT, 0);
if (data->textfont) { @@ -1677,7 +1677,7 @@ BOOL WINAPI ImmSetCompositionFontW(HIMC hIMC, LPLOGFONTW lplf) return FALSE;
data->IMC.lfFont.W = *lplf; - ImmInternalSendIMENotify(IMN_SETCOMPOSITIONFONT, 0); + ImmInternalSendIMENotify(data, IMN_SETCOMPOSITIONFONT, 0);
if (data->textfont) { @@ -1766,7 +1766,7 @@ BOOL WINAPI ImmSetCompositionStringW( HIMCC newCompStr; if (!root_context->bInComposition) { - ImmInternalPostIMEMessage(WM_IME_STARTCOMPOSITION, 0, 0); + ImmInternalPostIMEMessage(root_context, WM_IME_STARTCOMPOSITION, 0, 0); root_context->bInComposition = TRUE; }
@@ -1791,7 +1791,7 @@ BOOL WINAPI ImmSetCompositionStringW(
UpdateDataInDefaultIMEWindow(hwndDefault,FALSE);
- ImmInternalPostIMEMessage(WM_IME_COMPOSITION, wParam, flags); + ImmInternalPostIMEMessage(root_context, WM_IME_COMPOSITION, wParam, flags);
return TRUE; } @@ -1826,7 +1826,7 @@ BOOL WINAPI ImmSetCompositionWindow( if (reshow) ShowWindow(hwndDefault,SW_SHOWNOACTIVATE);
- ImmInternalSendIMENotify(IMN_SETCOMPOSITIONWINDOW, 0); + ImmInternalSendIMENotify(data, IMN_SETCOMPOSITIONWINDOW, 0); return TRUE; }
@@ -1860,7 +1860,7 @@ BOOL WINAPI ImmSetOpenStatus(HIMC hIMC, BOOL fOpen) if (hIMC == (HIMC)FROM_IME) { ImmInternalSetOpenStatus(fOpen); - ImmInternalSendIMENotify(IMN_SETOPENSTATUS, 0); + ImmInternalSendIMENotify(data, IMN_SETOPENSTATUS, 0); return TRUE; }
@@ -1873,17 +1873,17 @@ BOOL WINAPI ImmSetOpenStatus(HIMC hIMC, BOOL fOpen) pX11DRV_ForceXIMReset(data->IMC.hWnd);
if (fOpen == FALSE) - ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION,0,0); + ImmInternalPostIMEMessage(data, WM_IME_ENDCOMPOSITION,0,0); else - ImmInternalPostIMEMessage(WM_IME_STARTCOMPOSITION,0,0); + ImmInternalPostIMEMessage(data, WM_IME_STARTCOMPOSITION,0,0);
ImmInternalSetOpenStatus(fOpen); ImmInternalSetOpenStatus(!fOpen);
if (data->IMC.fOpen == FALSE) - ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION,0,0); + ImmInternalPostIMEMessage(data, WM_IME_ENDCOMPOSITION,0,0); else - ImmInternalPostIMEMessage(WM_IME_STARTCOMPOSITION,0,0); + ImmInternalPostIMEMessage(data, WM_IME_STARTCOMPOSITION,0,0);
return FALSE; } @@ -2094,7 +2094,7 @@ BOOL WINAPI ImmGenerateMessage(HIMC hIMC)
lpTransMsg = (LPTRANSMSG)ImmLockIMCC(data->IMC.hMsgBuf); for (i = 0; i < data->IMC.dwNumMsgBuf; i++) - ImmInternalPostIMEMessage(lpTransMsg[i].message, lpTransMsg[i].wParam, lpTransMsg[i].lParam); + ImmInternalPostIMEMessage(data, lpTransMsg[i].message, lpTransMsg[i].wParam, lpTransMsg[i].lParam);
ImmUnlockIMCC(data->IMC.hMsgBuf);