https://git.reactos.org/?p=reactos.git;a=commitdiff;h=2705abfb077a1826385be5...
commit 2705abfb077a1826385be5a2e080a84afa77c085 Author: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com AuthorDate: Sun Aug 9 22:42:17 2020 +0900 Commit: GitHub noreply@github.com CommitDate: Sun Aug 9 22:42:17 2020 +0900
[IMM32] Add ImmShowSoftKeyboard and ImmDestroySoftKeyboard (#3027)
CORE-11700 --- dll/win32/imm32/imm.c | 18 ++++++++++++++++-- dll/win32/imm32/imm32.spec | 4 ++-- 2 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/dll/win32/imm32/imm.c b/dll/win32/imm32/imm.c index 5b8468283dc..afa504c4c91 100644 --- a/dll/win32/imm32/imm.c +++ b/dll/win32/imm32/imm.c @@ -2676,9 +2676,14 @@ HWND WINAPI ImmCreateSoftKeyboard(UINT uType, UINT hOwner, int x, int y) */ BOOL WINAPI ImmDestroySoftKeyboard(HWND hSoftWnd) { +#ifdef __REACTOS__ + TRACE("(%p)\n", hSoftWnd); + return DestroyWindow(hSoftWnd); +#else FIXME("(%p): stub\n", hSoftWnd); SetLastError(ERROR_CALL_NOT_IMPLEMENTED); return FALSE; +#endif }
/*********************************************************************** @@ -2686,8 +2691,14 @@ BOOL WINAPI ImmDestroySoftKeyboard(HWND hSoftWnd) */ BOOL WINAPI ImmShowSoftKeyboard(HWND hSoftWnd, int nCmdShow) { +#ifdef __REACTOS__ + TRACE("(%p, %d)\n", hSoftWnd, nCmdShow); + if (hSoftWnd) + return ShowWindow(hSoftWnd, nCmdShow); +#else FIXME("(%p, %d): stub\n", hSoftWnd, nCmdShow); SetLastError(ERROR_CALL_NOT_IMPLEMENTED); +#endif return FALSE; }
@@ -3203,7 +3214,7 @@ BOOL WINAPI ImmDisableLegacyIME(void) */ BOOL WINAPI ImmSetActiveContext(HWND hwnd, HIMC hIMC, BOOL fFlag) { - FIXME("stub\n"); + FIXME("(%p, %p, %d): stub\n", hwnd, hIMC, fFlag); return FALSE; }
@@ -3212,7 +3223,10 @@ BOOL WINAPI ImmSetActiveContext(HWND hwnd, HIMC hIMC, BOOL fFlag) */ BOOL WINAPI ImmSetActiveContextConsoleIME(HWND hwnd, BOOL fFlag) { - HIMC hIMC = ImmGetContext(hwnd); + HIMC hIMC; + TRACE("(%p, %d)\n", hwnd, fFlag); + + hIMC = ImmGetContext(hwnd); if (hIMC) return ImmSetActiveContext(hwnd, hIMC, fFlag); return FALSE; diff --git a/dll/win32/imm32/imm32.spec b/dll/win32/imm32/imm32.spec index 84ddfaca1f7..bfd54c3e579 100644 --- a/dll/win32/imm32/imm32.spec +++ b/dll/win32/imm32/imm32.spec @@ -8,7 +8,7 @@ @ stdcall ImmCreateSoftKeyboard(long long long long) @ stdcall ImmDestroyContext(long) @ stdcall ImmDestroyIMCC(long) -@ stdcall ImmDestroySoftKeyboard(long) +@ stdcall ImmDestroySoftKeyboard(ptr) @ stdcall ImmDisableIME(long) @ stdcall ImmDisableIme(long) ImmDisableIME @ stdcall ImmDisableLegacyIME() @@ -98,7 +98,7 @@ #@ stdcall ImmSetHotKey(long long long ptr) user32.CliImmSetHotKey @ stdcall ImmSetOpenStatus(long long) @ stdcall ImmSetStatusWindowPos(long ptr) -@ stdcall ImmShowSoftKeyboard(long long) +@ stdcall ImmShowSoftKeyboard(ptr long) @ stdcall ImmSimulateHotKey(long long) @ stub ImmSystemHandler @ stdcall ImmTranslateMessage(long long long long)