Yeah I'm not sure whether they should be merged either, I think it comes down to preference. Maybe Vincent or Alexandre should decide. About using the union in hardware_msg_data, you're right, I didn't notice that and I'll deduplicate that. On Tue, Jul 23, 2019 at 3:50 AM Rémi Bernon <rbernon(a)codeweavers.com> wrote:
On Sat, 2019-06-29 at 22:26 -0400, Derek Lesho wrote:
Signed-off-by: Derek Lesho <dereklesho52(a)Gmail.com> --- server/protocol.def | 28 ++++++++++++++++++++++++++++ server/queue.c | 41 +++++++++++++++++++++++++++++++++++++++++ server/trace.c | 21 +++++++++++++++++++++ tools/make_requests | 1 + 4 files changed, 91 insertions(+)
diff --git a/server/protocol.def b/server/protocol.def index 8b8a8a1512..3a6a202f49 100644 --- a/server/protocol.def +++ b/server/protocol.def @@ -358,6 +358,29 @@ typedef union } hw; } hw_input_t;
+typedef union +{ + int type; + struct + { + int type; /* RIM_TYPEMOUSE */ + int x; /* relative x movement */ + int y; /* relative y movement */ + unsigned short button_flags; /* mouse button */ + unsigned short button_data; /* event details */ + } mouse; + struct + { + int type; /* RIM_TYPEKEYBOARD */ + /* TODO: fill this in if/when necessary */ + } kbd; + struct + { + int type; /* RIM_TYPEHID */ + /* TODO: fill this in if/when necessary */ + } hid; +} hw_rawinput_t;
I'm still wondering if it should be merged with hw_input_t or not and use the same send_hardware_message request for raw inputs and normal inputs, but in any case this union should at least be used for the rawinput field in struct hardware_msg_data (with the kbd fields added) instead of duplicating it. -- Rémi Bernon <rbernon(a)codeweavers.com>