https://git.reactos.org/?p=reactos.git;a=commitdiff;h=2705abfb077a1826385be…
commit 2705abfb077a1826385be5a2e080a84afa77c085
Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com>
AuthorDate: Sun Aug 9 22:42:17 2020 +0900
Commit: GitHub <noreply(a)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)