From 688eeca0becc8fbe7e4e028607e892b0cbcd654a Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Thu, 14 Oct 2021 08:51:40 +1100 Subject: [PATCH] Rebase against 6d307e2a647e71c21106feb0d62e371b3e55ab38. --- patches/patchinstall.sh | 2 +- ...hardware_message-flags-for-rawinput-.patch | 30 +++++++++---------- ...ending-RIM_TYPEMOUSE-through-__wine_.patch | 14 ++++----- staging/upstream-commit | 2 +- 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index dffd9d2f..086952ba 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "50f889fd19d329bef7c001f9eafd1030fc1e3a56" + echo "6d307e2a647e71c21106feb0d62e371b3e55ab38" } # Show version information diff --git a/patches/user32-rawinput-mouse/0005-server-Add-send_hardware_message-flags-for-rawinput-.patch b/patches/user32-rawinput-mouse/0005-server-Add-send_hardware_message-flags-for-rawinput-.patch index a8032e4f..c5a2d1f9 100644 --- a/patches/user32-rawinput-mouse/0005-server-Add-send_hardware_message-flags-for-rawinput-.patch +++ b/patches/user32-rawinput-mouse/0005-server-Add-send_hardware_message-flags-for-rawinput-.patch @@ -1,4 +1,4 @@ -From b0e9308f959238859ddd0e8383c024e3e5020d54 Mon Sep 17 00:00:00 2001 +From 07d4dc9e66dc130f0b43225959120a5cf3c73fcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Mon, 26 Aug 2019 14:37:20 +0200 Subject: [PATCH] server: Add send_hardware_message flags for rawinput @@ -11,10 +11,10 @@ Subject: [PATCH] server: Add send_hardware_message flags for rawinput 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/dlls/user32/message.c b/dlls/user32/message.c -index a80fb8c57ea..f0d4fa9cd14 100644 +index f53d417c22a..d2f91b28ac0 100644 --- a/dlls/user32/message.c +++ b/dlls/user32/message.c -@@ -3278,6 +3278,7 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r +@@ -3279,6 +3279,7 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r req->input.mouse.flags = input->u.mi.dwFlags; req->input.mouse.time = input->u.mi.time; req->input.mouse.info = input->u.mi.dwExtraInfo; @@ -22,7 +22,7 @@ index a80fb8c57ea..f0d4fa9cd14 100644 break; case INPUT_KEYBOARD: req->input.kbd.vkey = input->u.ki.wVk; -@@ -3285,6 +3286,7 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r +@@ -3286,6 +3287,7 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r req->input.kbd.flags = input->u.ki.dwFlags; req->input.kbd.time = input->u.ki.time; req->input.kbd.info = input->u.ki.dwExtraInfo; @@ -31,10 +31,10 @@ index a80fb8c57ea..f0d4fa9cd14 100644 case INPUT_HARDWARE: req->input.hw.msg = input->u.hi.uMsg; diff --git a/server/protocol.def b/server/protocol.def -index eb15cef6fdb..e098c78a125 100644 +index b5cc1dbae3a..3cff090335a 100644 --- a/server/protocol.def +++ b/server/protocol.def -@@ -2044,6 +2044,7 @@ enum message_type +@@ -2040,6 +2040,7 @@ enum message_type VARARG(keystate,bytes); /* global state array for all the keys */ @END #define SEND_HWMSG_INJECTED 0x01 @@ -43,10 +43,10 @@ index eb15cef6fdb..e098c78a125 100644 /* Get a message from the current queue */ diff --git a/server/queue.c b/server/queue.c -index 3e6050686ae..c87e1ddb0d4 100644 +index 71e3b69fe8c..d8428cdf13c 100644 --- a/server/queue.c +++ b/server/queue.c -@@ -1732,7 +1732,7 @@ done: +@@ -1817,7 +1817,7 @@ done: /* queue a hardware message for a mouse event */ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, const hw_input_t *input, @@ -55,16 +55,16 @@ index 3e6050686ae..c87e1ddb0d4 100644 { const struct rawinput_device *device; struct hardware_msg_data *msg_data; -@@ -1787,7 +1787,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons +@@ -1872,7 +1872,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons y = desktop->cursor.y; } - if ((foreground = get_foreground_thread( desktop, win ))) + if ((req_flags & SEND_HWMSG_RAWINPUT) && (foreground = get_foreground_thread( desktop, win ))) { + memset( &raw_msg, 0, sizeof(raw_msg) ); raw_msg.foreground = foreground; - raw_msg.desktop = desktop; -@@ -1846,7 +1846,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons +@@ -1931,7 +1931,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons /* queue a hardware message for a keyboard event */ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, const hw_input_t *input, @@ -73,16 +73,16 @@ index 3e6050686ae..c87e1ddb0d4 100644 { struct hw_msg_source source = { IMDT_KEYBOARD, origin }; const struct rawinput_device *device; -@@ -1924,7 +1924,7 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c +@@ -2009,7 +2009,7 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c break; } - if ((foreground = get_foreground_thread( desktop, win ))) + if ((req_flags & SEND_HWMSG_RAWINPUT) && (foreground = get_foreground_thread( desktop, win ))) { + memset( &raw_msg, 0, sizeof(raw_msg) ); raw_msg.foreground = foreground; - raw_msg.desktop = desktop; -@@ -2540,10 +2540,10 @@ DECL_HANDLER(send_hardware_message) +@@ -2632,10 +2632,10 @@ DECL_HANDLER(send_hardware_message) switch (req->input.type) { case INPUT_MOUSE: @@ -96,5 +96,5 @@ index 3e6050686ae..c87e1ddb0d4 100644 case INPUT_HARDWARE: queue_custom_hardware_message( desktop, req->win, origin, &req->input ); -- -2.30.2 +2.33.0 diff --git a/patches/user32-rawinput-mouse/0007-user32-Support-sending-RIM_TYPEMOUSE-through-__wine_.patch b/patches/user32-rawinput-mouse/0007-user32-Support-sending-RIM_TYPEMOUSE-through-__wine_.patch index 5d9fed95..91491f92 100644 --- a/patches/user32-rawinput-mouse/0007-user32-Support-sending-RIM_TYPEMOUSE-through-__wine_.patch +++ b/patches/user32-rawinput-mouse/0007-user32-Support-sending-RIM_TYPEMOUSE-through-__wine_.patch @@ -1,4 +1,4 @@ -From 2e661c0f3384f920f97b3c78e94096233093b4ac Mon Sep 17 00:00:00 2001 +From bb3a28f74aa0ff79539e0deb74a09275bbfc8c73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Thu, 25 Mar 2021 14:26:35 +0100 Subject: [PATCH] user32: Support sending RIM_TYPEMOUSE through @@ -10,10 +10,10 @@ Subject: [PATCH] user32: Support sending RIM_TYPEMOUSE through 2 files changed, 9 insertions(+) diff --git a/dlls/user32/message.c b/dlls/user32/message.c -index 702e5892a4d..98c9648e36b 100644 +index abf892d1474..839b6d6bc14 100644 --- a/dlls/user32/message.c +++ b/dlls/user32/message.c -@@ -3298,6 +3298,12 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r +@@ -3299,6 +3299,12 @@ NTSTATUS send_hardware_message( HWND hwnd, const INPUT *input, const RAWINPUT *r req->input.hw.rawinput.type = rawinput->header.dwType; switch (rawinput->header.dwType) { @@ -27,11 +27,11 @@ index 702e5892a4d..98c9648e36b 100644 req->input.hw.rawinput.hid.device = HandleToUlong( rawinput->header.hDevice ); req->input.hw.rawinput.hid.param = rawinput->header.wParam; diff --git a/server/queue.c b/server/queue.c -index c87e1ddb0d4..55580fe1122 100644 +index d8428cdf13c..eef5bf56347 100644 --- a/server/queue.c +++ b/server/queue.c -@@ -2016,6 +2016,9 @@ static void queue_custom_hardware_message( struct desktop *desktop, user_handle_ - msg_data->flags = 0; +@@ -2103,6 +2103,9 @@ static void queue_custom_hardware_message( struct desktop *desktop, user_handle_ + msg_data->size = sizeof(*msg_data) + report_size; msg_data->rawinput = input->hw.rawinput; + if (input->hw.msg == WM_INPUT && input->hw.rawinput.type == RIM_TYPEMOUSE) @@ -41,5 +41,5 @@ index c87e1ddb0d4..55580fe1122 100644 if (raw_msg.foreground) release_object( raw_msg.foreground ); -- -2.30.2 +2.33.0 diff --git a/staging/upstream-commit b/staging/upstream-commit index d46310e1..ec8580b5 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -50f889fd19d329bef7c001f9eafd1030fc1e3a56 +6d307e2a647e71c21106feb0d62e371b3e55ab38