From 3a5f50acbef9b603d9c4437ad141096e9f4f647b Mon Sep 17 00:00:00 2001 From: Vincent Povirk Date: Sat, 13 Mar 2010 15:45:31 -0600 Subject: [PATCH] winex11.drv: Use timestamps from PropertyNotify events on all windows. This greatly increases the chances that we can set the timestamp adjustment before setting the focus to an unmanaged Wine window. --- dlls/winex11.drv/event.c | 4 +++- dlls/winex11.drv/window.c | 3 +-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c index 63fb5c1..d40521a 100644 --- a/dlls/winex11.drv/event.c +++ b/dlls/winex11.drv/event.c @@ -1000,7 +1000,9 @@ static void X11DRV_PropertyNotify( HWND hwnd, XEvent *xev ) if (!hwnd) return; if (!(data = X11DRV_get_win_data( hwnd ))) return; - if (event->atom == x11drv_atom(WM_STATE)) handle_wm_state_notify( data, event, TRUE ); + if (!event->send_event) EVENT_x11_time_to_win32_time(event->time); + + if (data->managed && event->atom == x11drv_atom(WM_STATE)) handle_wm_state_notify( data, event, TRUE ); } diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index 47f7245..e6a4827 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -335,8 +335,7 @@ static int get_window_attributes( Display *display, struct x11drv_win_data *data attr->event_mask = (ExposureMask | PointerMotionMask | ButtonPressMask | ButtonReleaseMask | EnterWindowMask | KeyPressMask | KeyReleaseMask | FocusChangeMask | - KeymapStateMask | StructureNotifyMask); - if (data->managed) attr->event_mask |= PropertyChangeMask; + KeymapStateMask | StructureNotifyMask | PropertyChangeMask); return (CWOverrideRedirect | CWSaveUnder | CWColormap | CWCursor | CWEventMask | CWBitGravity | CWBackingStore); -- 1.6.3.3