From 0d98c4fa7c29b9dec4da74380f4d0e695be53349 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 27 Apr 2010 18:45:22 -0400 Subject: fix XSYNCronization of resizes (especially with two monitors). 1) a ConfigureNotify must always follow a Sync notification 2) determine the final size of the window with its position else struts are not applied properly for (partly) maximized windows 3) set the sync counter to a value when managing a new window --- openbox/event.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'openbox/event.c') diff --git a/openbox/event.c b/openbox/event.c index 9905d973..cfa3b4e3 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -1659,6 +1659,12 @@ static void event_handle_client(ObClient *client, XEvent *e) } #ifdef SYNC else if (msgtype == OBT_PROP_ATOM(NET_WM_SYNC_REQUEST_COUNTER)) { + /* if they are resizing right now this would cause weird behaviour. + if one day a user reports clients stop resizing, then handle + this better by resetting a new XSync alarm and stuff on the + new counter, but I expect it will never happen */ + if (moveresize_client == client) + moveresize_end(FALSE); client_update_sync_request_counter(client); } #endif -- cgit v1.2.3