I updated the bug tracker again.
In REAPER, the window tree looks a bit like this:
host_window_reparent parent 402, window 200192 (604,402)-(1516,1110)
host_window_reparent parent 200192, window 200193 (0,0)-(912,708)
root_coords 1
host_window_reparent parent 200193, window 1600130 (0,0)-(912,708)
root_coords 1
host_window_reparent parent 1600130, window 16012db (0,0)-(644,659)
root_coords 1
host_window_reparent parent 16012db, window 2200000 (0,0)-(805,460)
root_coords 1
host_window_reparent parent 2200000, window 2000003 (0,0)-(1920,1200)
root_coords 0
I think 402, 200192, and 200193 are from REAPER and the rest from yabridge.
One detail I noticed is that window 2000003 gets the initial click event
from yabridge and sends the correct value to
**cursor:map_event_coords**. I don't know the structure of
event->window, but there is something in
[**host_window_configure_child**](https://gitlab.winehq.org/wine/wine/-/blob/master/dlls/winex11.drv/window.c#...)
that messes with coordinate offsets.
Is is possible that **map_event_coords** should check the value of
`root_coords` (aka `event->send_event`) and provide `(pt->x, pt->y)`
when this is 0?
I'll keep picking at things and see if there's more to find.
Alternatively, a flag/argument solution would get DAW users back in action.
Bah. There were too many changes to X11DRV_ConfigureNotify for printf debugging, and I wouldn't know what to change that also keeps other programs from breaking.
I can provide detailed logs for 9.21 (or any interim versions), but that's about all I can do