From 37c7923a31874715a10be9389ca4c862df2e2130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Thu, 6 May 2021 12:57:32 +0200 Subject: [PATCH] server: Add RIM_TYPEHID type / hid member to rawinput union. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50506 Signed-off-by: RĂ©mi Bernon Signed-off-by: Alexandre Julliard --- 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;