[PATCH 4/6] winemac: Use unixlib interface for macdrv_clear_ime_text.

Jacek Caban wine at gitlab.winehq.org
Wed Jun 1 19:27:56 CDT 2022


From: Jacek Caban <jacek at codeweavers.com>

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
---
 dlls/winemac.drv/ime.c         | 2 +-
 dlls/winemac.drv/macdrv.h      | 3 +--
 dlls/winemac.drv/macdrv_main.c | 8 ++++++++
 dlls/winemac.drv/unixlib.h     | 1 +
 4 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/dlls/winemac.drv/ime.c b/dlls/winemac.drv/ime.c
index 251c22d5005..756e880c5a3 100644
--- a/dlls/winemac.drv/ime.c
+++ b/dlls/winemac.drv/ime.c
@@ -853,7 +853,7 @@ BOOL WINAPI NotifyIME(HIMC hIMC, DWORD dwAction, DWORD dwIndex, DWORD dwValue)
 
                     TRACE("NI_COMPOSITIONSTR: CPS_CANCEL\n");
 
-                    macdrv_clear_ime_text();
+                    MACDRV_CALL(ime_clear, NULL);
                     if (lpIMC->hCompStr)
                         ImmDestroyIMCC(lpIMC->hCompStr);
 
diff --git a/dlls/winemac.drv/macdrv.h b/dlls/winemac.drv/macdrv.h
index de8384d5437..e125bb03b4d 100644
--- a/dlls/winemac.drv/macdrv.h
+++ b/dlls/winemac.drv/macdrv.h
@@ -287,13 +287,12 @@ extern NTSTATUS macdrv_init(void *arg) DECLSPEC_HIDDEN;
  * Mac IME driver
  */
 
-extern NTSTATUS macdrv_ime_process_text_input(void *arg) DECLSPEC_HIDDEN;
-
 extern NTSTATUS WINAPI macdrv_ime_set_text(void *params, ULONG size) DECLSPEC_HIDDEN;
 extern NTSTATUS WINAPI macdrv_ime_query_char_rect(void *params, ULONG size) DECLSPEC_HIDDEN;
 
 /* unixlib interface */
 
+extern NTSTATUS macdrv_ime_process_text_input(void *arg) DECLSPEC_HIDDEN;
 extern NTSTATUS macdrv_notify_icon(void *arg) DECLSPEC_HIDDEN;
 
 extern NTSTATUS macdrv_client_func(enum macdrv_client_funcs func, const void *params,
diff --git a/dlls/winemac.drv/macdrv_main.c b/dlls/winemac.drv/macdrv_main.c
index bf06d96b407..4ef9060ea4b 100644
--- a/dlls/winemac.drv/macdrv_main.c
+++ b/dlls/winemac.drv/macdrv_main.c
@@ -615,6 +615,13 @@ NTSTATUS macdrv_client_func(enum macdrv_client_funcs id, const void *params, ULO
 }
 
 
+static NTSTATUS macdrv_ime_clear(void *arg)
+{
+    macdrv_clear_ime_text();
+    return 0;
+}
+
+
 static NTSTATUS macdrv_ime_using_input_method(void *arg)
 {
     return macdrv_using_input_method();
@@ -623,6 +630,7 @@ static NTSTATUS macdrv_ime_using_input_method(void *arg)
 
 const unixlib_entry_t __wine_unix_call_funcs[] =
 {
+    macdrv_ime_clear,
     macdrv_ime_process_text_input,
     macdrv_ime_using_input_method,
     macdrv_init,
diff --git a/dlls/winemac.drv/unixlib.h b/dlls/winemac.drv/unixlib.h
index dd03cd4de95..d0950e63c3c 100644
--- a/dlls/winemac.drv/unixlib.h
+++ b/dlls/winemac.drv/unixlib.h
@@ -21,6 +21,7 @@
 
 enum macdrv_funcs
 {
+    unix_ime_clear,
     unix_ime_process_text_input,
     unix_ime_using_input_method,
     unix_init,
-- 
GitLab


https://gitlab.winehq.org/wine/wine/-/merge_requests/170



More information about the wine-devel mailing list