Rémi Bernon
c1d5cae54b
server: Use a shared_object_t for the dummy object.
...
The sequence lives in the object header, and the object is containing
the shm struct. The code was reading before the dummy_shm variable and
sometimes asserted that the sequence isn't initialized to zero.
2024-07-10 22:05:38 +02:00
Rémi Bernon
8ef766f114
win32u: Use the thread input shared memory for NtUserGetGUIThreadInfo.
2024-07-09 11:03:46 +02:00
Rémi Bernon
ae5ede98c4
server: Add cursor handle and count to desktop shared memory.
2024-07-09 11:03:45 +02:00
Rémi Bernon
025e8cf4a0
server: Add a foreground flag to the thread input shared memory.
2024-07-09 11:03:45 +02:00
Rémi Bernon
90dcd2eaa6
win32u: Use the thread message queue shared memory in peek_message.
2024-07-08 23:09:04 +02:00
Rémi Bernon
6253e8c1ea
server: Move caret window and rect to input shared memory.
2024-07-04 20:00:23 +02:00
Rémi Bernon
18d1af889e
server: Move capture window to input shared memory.
...
As well as menu owner / menu size window handles.
2024-07-04 20:00:22 +02:00
Rémi Bernon
be93b3ac92
server: Move focus window to input shared memory.
2024-07-04 20:00:22 +02:00
Rémi Bernon
d42b502425
server: Move active window to input shared memory.
2024-07-04 20:00:22 +02:00
Rémi Bernon
953ee0714c
server: Create a thread input shared mapping.
2024-07-04 20:00:22 +02:00
Rémi Bernon
7f53ca70ba
server: Move thread message queue bits to the shared mapping.
2024-07-01 09:40:04 +02:00
Rémi Bernon
faa10ba7b5
server: Move thread message queue masks to the shared mapping.
2024-07-01 09:40:04 +02:00
Rémi Bernon
817cb4dd69
server: Remove now unnecessary active_hooks from replies.
2024-06-26 17:00:19 +02:00
Rémi Bernon
96c44adae8
win32u: Read the active hooks count from the shared memory.
2024-06-26 17:00:18 +02:00
Rémi Bernon
ae5a02e808
server: Update the active hooks bitmaps when hooks are added / removed.
2024-06-26 17:00:18 +02:00
Rémi Bernon
fd3de9005e
server: Create a thread message queue shared mapping.
2024-06-26 17:00:18 +02:00
Rémi Bernon
2eeb4d5192
server: Move the desktop keystate to shared memory.
...
Based on a patch by Huw Davies.
2024-06-21 22:59:39 +02:00
Rémi Bernon
d5b4458c8d
server: Use separate functions to update the desktop and input keystates.
...
Based on a patch by Huw Davies.
2024-06-21 22:59:39 +02:00
Rémi Bernon
534aff4a63
server: Use a separate variable to determine the message on Alt release.
...
Based on a patch by Huw Davies.
2024-06-21 22:59:39 +02:00
Rémi Bernon
472ce7fd1d
server: Get rid of the global cursor structure.
...
Based on a patch by Huw Davies.
2024-06-21 22:59:39 +02:00
Rémi Bernon
496f663157
server: Store the cursor clip rect in the shared data.
...
Based on a patch by Huw Davies.
2024-06-21 22:59:39 +02:00
Rémi Bernon
5488d99b3e
server: Move the last cursor time to the desktop session object.
...
Based on a patch by Huw Davies.
2024-06-20 23:03:26 +02:00
Rémi Bernon
728049d6fa
server: Move the cursor position to the desktop session object.
...
Based on a patch by Huw Davies.
2024-06-20 23:03:26 +02:00
Alexandros Frantzis
37e7038c5c
server: Implement key auto-repeat request.
2024-06-07 21:00:10 +02:00
Alexandros Frantzis
f95a44665f
server: Check message target process for raw input device flags.
2024-06-07 21:00:10 +02:00
Alexandros Frantzis
bf1da68aaa
server: Pass desktop to get_first_global_hook.
2024-06-07 21:00:10 +02:00
Rémi Bernon
9ec501141e
server: Avoid calling set_event from within msg_queue_add_queue.
2024-06-05 22:01:22 +02:00
Alexandros Frantzis
d38d455c4b
server: Set VK_PACKET async state in raw input legacy mode.
2024-05-31 19:05:58 +02:00
Alexandros Frantzis
69aad4aeca
server: Don't send raw input events for unicode inputs.
2024-05-31 19:05:55 +02:00
Alexandros Frantzis
d14a827b8c
server: Apply modifier vkey transformations regardless of unicode flag.
2024-05-31 19:05:55 +02:00
Alexandros Frantzis
d0e3286d96
server: Use right-left modifier vkeys for hooks.
2024-05-31 19:05:55 +02:00
Alexandros Frantzis
85f1ad64c4
server: Fix handling of KEYEVENTF_UNICODE inputs with a non-zero vkey.
2024-05-22 22:28:43 +02:00
Rémi Bernon
d18bd43ba2
server: Pass the adjusted vkey to send_hook_ll_message.
2024-05-22 22:28:43 +02:00
Alexandros Frantzis
11ef7af768
server: Send numpad virtual keys if NumLock is active.
...
If the hardware keyboard event has KBD virtual key information, use it
to detect numpad key events and translate them to the appropriate
virtual keys depending on NumLock (and Shift) state.
2024-05-21 20:32:15 +02:00
Paul Gofman
0884b503c9
win32u: Update last message time in NtUserGetRawInputBuffer().
2024-05-12 16:31:50 +02:00
Rémi Bernon
b053e924e8
server: Process internal messages when checking queue status.
2024-03-21 22:19:58 +01:00
Rémi Bernon
a84517418e
server: Check for internal hardware messages before others.
2024-03-21 22:19:58 +01:00
Rémi Bernon
994021da99
server: Send WM_WINE_SETCURSOR message only when necessary.
2024-03-21 22:19:58 +01:00
Rémi Bernon
1604d8a202
server: Send WM_WINE_CLIPCURSOR message only when necessary.
2024-03-21 22:19:58 +01:00
Rémi Bernon
24ad74ee26
server: Send emulated mouse messages on primary pointer updates.
2024-03-06 19:20:09 +01:00
Rémi Bernon
40b65e28a7
server: Continuously send pointer update messages while it's down.
2024-03-06 19:20:09 +01:00
Rémi Bernon
d8b8ac85eb
server: Generate WM_POINTERENTER / WM_POINTERLEAVE messages.
2024-03-06 19:20:09 +01:00
Rémi Bernon
5b833c83be
server: Stop waiting on LL-hooks for non-injected input.
2024-03-06 19:19:47 +01:00
Rémi Bernon
61d1c18957
server: Add support for sending and receiving WM_POINTER* messages.
2024-03-05 20:50:07 +01:00
Rémi Bernon
bb5f0e122f
win32u: Use a custom struct hid_input for NtUserSendHardwareInput.
2024-03-05 20:50:06 +01:00
Rémi Bernon
9591a36ee8
server: Dispatch rawinput messages using the rawinput process list.
2024-02-28 19:51:20 +01:00
Rémi Bernon
c43b1ecbc3
server: Keep a list of processes that can receive rawinput messages.
2024-02-28 19:51:20 +01:00
Rémi Bernon
496eed7aaf
server: Send hardware input to the visible input desktop.
...
When hwnd is specified, it is because it received a direct host input,
so switch the input desktop to match the one that is receiving it.
We don't validate that the sending thread uses the same desktop as the
target window: it may not even be the case for drivers with a separate
thread that listens on input events.
2024-02-28 19:51:20 +01:00
Rémi Bernon
1664ad7d50
server: Fix rawinput buffer sizes and alignment on WoW64.
2024-02-09 11:14:07 +01:00
Rémi Bernon
2eb8950392
server: Move rawinput message conversion from win32u.
...
Appending the entire RAWMOUSE / RAWKEYBOARD / RAWHID + report structs
after the hardware message data, instead of using a custom intermediate
structure.
2024-02-09 11:14:07 +01:00