Rémi Bernon : server: Add RIM_TYPEHID type / hid member to rawinput union.

Alexandre Julliard julliard at winehq.org
Mon May 10 15:44:06 CDT 2021


Module: wine
Branch: master
Commit: 37c7923a31874715a10be9389ca4c862df2e2130
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=37c7923a31874715a10be9389ca4c862df2e2130

Author: Rémi Bernon <rbernon at codeweavers.com>
Date:   Thu May  6 12:57:32 2021 +0200

server: Add RIM_TYPEHID type / hid member to rawinput union.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50506
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/wine/server_protocol.h | 10 +++++++++-
 server/protocol.def            |  8 ++++++++
 server/trace.c                 |  5 +++++
 3 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/include/wine/server_protocol.h b/include/wine/server_protocol.h
index 139aebc722a..9fe826918fa 100644
--- a/include/wine/server_protocol.h
+++ b/include/wine/server_protocol.h
@@ -279,6 +279,14 @@ union rawinput
         int            y;
         unsigned int   data;
     } mouse;
+    struct
+    {
+        int            type;
+        unsigned int   device;
+        unsigned int   param;
+        unsigned short usage_page;
+        unsigned short usage;
+    } hid;
 };
 
 struct hardware_msg_data
@@ -6236,7 +6244,7 @@ union generic_reply
 
 /* ### protocol_version begin ### */
 
-#define SERVER_PROTOCOL_VERSION 699
+#define SERVER_PROTOCOL_VERSION 700
 
 /* ### protocol_version end ### */
 
diff --git a/server/protocol.def b/server/protocol.def
index 10c5943a189..eaffa886f21 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -295,6 +295,14 @@ union rawinput
         int            y;       /* y coordinate */
         unsigned int   data;    /* mouse data */
     } mouse;
+    struct
+    {
+        int            type;    /* RIM_TYPEHID */
+        unsigned int   device;  /* rawinput device index */
+        unsigned int   param;   /* rawinput message param */
+        unsigned short usage_page;/* HID usage page */
+        unsigned short usage;   /* HID usage */
+    } hid;
 };
 
 struct hardware_msg_data
diff --git a/server/trace.c b/server/trace.c
index 3cbdaf78185..e40f0769a35 100644
--- a/server/trace.c
+++ b/server/trace.c
@@ -407,6 +407,11 @@ static void dump_rawinput( const char *prefix, const union rawinput *rawinput )
         fprintf( stderr, "%s{type=KEYBOARD,message=%04x,vkey=%04hx,scan=%04hx}", prefix,
                  rawinput->kbd.message, rawinput->kbd.vkey, rawinput->kbd.scan );
         break;
+    case RIM_TYPEHID:
+        fprintf( stderr, "%s{type=HID,device=%04x,param=%04x,page=%04hx,usage=%04hx}",
+                 prefix, rawinput->hid.device, rawinput->hid.param, rawinput->hid.usage_page,
+                 rawinput->hid.usage );
+        break;
     default:
         fprintf( stderr, "%s{type=%04x}", prefix, rawinput->type );
         break;




More information about the wine-cvs mailing list