From: Rémi Bernon rbernon@codeweavers.com
Instead of the host window itself, which will never have one.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57370 --- dlls/winex11.drv/event.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c index 64c074361fb..07ce9a9f1c1 100644 --- a/dlls/winex11.drv/event.c +++ b/dlls/winex11.drv/event.c @@ -183,24 +183,24 @@ static void host_window_send_configure_events( struct host_window *win, Display BOOL has_serial; HWND hwnd;
+ configure.event = win->children[i].window; + configure.window = configure.event; + configure.x = rect.left; + configure.y = rect.top; + configure.width = rect.right - rect.left; + configure.height = rect.bottom - rect.top; + configure.send_event = 0; + /* Only send a fake event if we're not expecting one from a state/config request. * We may know what was requested, but not what the WM will decide to reply, and our * fake event might trigger some undesired changes before the real ConfigureNotify. */ - if (XFindContext( display, win->window, winContext, (char **)&hwnd )) continue; + if (XFindContext( configure.display, configure.window, winContext, (char **)&hwnd )) continue; if (!(data = get_win_data( hwnd ))) continue; has_serial = data->wm_state_serial || data->configure_serial; release_win_data( data ); if (has_serial) continue;
- configure.event = win->children[i].window; - configure.window = configure.event; - configure.x = rect.left; - configure.y = rect.top; - configure.width = rect.right - rect.left; - configure.height = rect.bottom - rect.top; - configure.send_event = 0; - XPutBackEvent( configure.display, (XEvent *)&configure ); } }