Rebase against 6c5d17af07a318d754c0c21023b2d162a0d3725d.

This commit is contained in:
Alistair Leslie-Hughes
2024-06-22 17:37:43 +10:00
parent 5ecb89298f
commit 593249dcde
5 changed files with 44 additions and 45 deletions

View File

@@ -1,4 +1,4 @@
From 0dae85eba564b06274760c085652908727e3b2e7 Mon Sep 17 00:00:00 2001
From 48124df7efbda048d841899cc9bde77a3684622b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
Date: Mon, 26 Aug 2019 14:37:20 +0200
Subject: [PATCH] server: Add send_hardware_message flags for rawinput
@@ -26,10 +26,10 @@ index bd11567290f..c75e691b4ee 100644
{
UINT flags;
diff --git a/server/protocol.def b/server/protocol.def
index dc77ecec15b..e4e632dcf23 100644
index 222a283477a..320b87775b7 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -2206,7 +2206,7 @@ enum message_type
@@ -2208,7 +2208,7 @@ enum message_type
@REQ(send_hardware_message)
user_handle_t win; /* window handle */
hw_input_t input; /* input data */
@@ -38,7 +38,7 @@ index dc77ecec15b..e4e632dcf23 100644
VARARG(report,bytes); /* HID report data */
@REPLY
int wait; /* do we need to wait for a reply? */
@@ -2215,7 +2215,6 @@ enum message_type
@@ -2217,7 +2217,6 @@ enum message_type
int new_x; /* new cursor position */
int new_y;
@END
@@ -47,10 +47,10 @@ index dc77ecec15b..e4e632dcf23 100644
/* Get a message from the current queue */
diff --git a/server/queue.c b/server/queue.c
index cece12066fc..c423b9ad8c4 100644
index 784443ce955..0db4faab193 100644
--- a/server/queue.c
+++ b/server/queue.c
@@ -2031,7 +2031,7 @@ static void dispatch_rawinput_message( struct desktop *desktop, struct rawinput_
@@ -2056,7 +2056,7 @@ static void dispatch_rawinput_message( struct desktop *desktop, struct rawinput_
/* 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,
@@ -59,7 +59,7 @@ index cece12066fc..c423b9ad8c4 100644
{
const desktop_shm_t *desktop_shm = desktop->shared;
struct hardware_msg_data *msg_data;
@@ -2092,7 +2092,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
@@ -2117,7 +2117,7 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
y = desktop_shm->cursor.y;
}
@@ -68,7 +68,7 @@ index cece12066fc..c423b9ad8c4 100644
{
memset( &raw_msg, 0, sizeof(raw_msg) );
raw_msg.foreground = foreground;
@@ -2107,6 +2107,8 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
@@ -2132,6 +2132,8 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
release_object( foreground );
}
@@ -77,7 +77,7 @@ index cece12066fc..c423b9ad8c4 100644
for (i = 0; i < ARRAY_SIZE( messages ); i++)
{
if (!messages[i]) continue;
@@ -2137,14 +2139,14 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
@@ -2162,14 +2164,14 @@ static int queue_mouse_message( struct desktop *desktop, user_handle_t win, cons
}
static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, const hw_input_t *input,
@@ -94,16 +94,16 @@ index cece12066fc..c423b9ad8c4 100644
}
static void stop_key_repeat( struct desktop *desktop )
@@ -2157,7 +2159,7 @@ static void stop_key_repeat( struct desktop *desktop )
@@ -2182,7 +2184,7 @@ static void stop_key_repeat( struct desktop *desktop )
/* 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,
- unsigned int origin, struct msg_queue *sender, int repeat )
+ unsigned int origin, struct msg_queue *sender, int repeat, unsigned int send_flags )
{
const desktop_shm_t *desktop_shm = desktop->shared;
struct hw_msg_source source = { IMDT_KEYBOARD, origin };
struct hardware_msg_data *msg_data;
@@ -2280,7 +2282,7 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c
@@ -2305,7 +2307,7 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c
}
}
@@ -112,7 +112,7 @@ index cece12066fc..c423b9ad8c4 100644
{
struct rawinput_message raw_msg = {0};
raw_msg.foreground = foreground;
@@ -2295,6 +2297,8 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c
@@ -2320,6 +2322,8 @@ static int queue_keyboard_message( struct desktop *desktop, user_handle_t win, c
release_object( foreground );
}
@@ -121,7 +121,7 @@ index cece12066fc..c423b9ad8c4 100644
if (!(msg = alloc_hardware_message( input->kbd.info, source, time, 0 ))) return 0;
msg_data = msg->data;
@@ -3050,10 +3054,10 @@ DECL_HANDLER(send_hardware_message)
@@ -3075,10 +3079,10 @@ DECL_HANDLER(send_hardware_message)
switch (req->input.type)
{
case INPUT_MOUSE: