- Add sync_window_input_shape() function to handle ShapeInput operations
- Modify get_window_attributes() to exclude mouse events for transparent windows
- Update sync_window_style() to call sync_window_input_shape()
- Handle WS_EX_TRANSPARENT style changes in X11DRV_SetWindowStyle()
- Ensure proper input shape setup in create_whole_window()
This implementation uses both event mask control and ShapeInput extension
to provide accurate mouse pass-through functionality for windows with
WS_EX_TRANSPARENT extended style. When a window has this style, mouse
events will pass through to underlying windows while still allowing
keyboard and focus events.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8597
@giomasce
Looks like this MR introduced various test failures in dsound/tests/capture.c and mmdevapi/tests/capture.c (see, e. g., https://gitlab.winehq.org/wine/wine/-/jobs/174369). I am reproducing those locally. Commit 00211db0d08d60ee9a0e40206bf7cf9b5b88987b (functional change) triggered failures in dsound test (reverting that fixes the failures). The failures in mmdevapi are in newly added test_formats().
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8559#note_110254