* Source/x11/XGServerWindow.m:

* Source/x11/XGServer.m:
* Source/x11/XGServerEvent.m:
* Headers/x11/XGGeneric.h:
* Headers/x11/XGServerWindow.h:
* Headers/x11/XGServer.h:
Implement the _NET_WM_SYNC_REQUEST protocol described here:
http://standards.freedesktop.org/wm-spec/1.3/ar01s06.html

This is supposed to make window resizing smoother when dragging
a resize handle provided by the window manager, by waiting to
change the window manager's frame until the GNUstep window is
finished repainting.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33045 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
ericwa 2011-05-15 08:37:44 +00:00
parent 09c3361700
commit 6c0d48eeec
7 changed files with 84 additions and 2 deletions

View file

@ -635,6 +635,14 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
(SubstructureRedirectMask | SubstructureNotifyMask),
&xEvent);
}
#ifdef HAVE_LIBXEXT
else if ((Atom)xEvent.xclient.data.l[0]
== generic.net_wm_sync_request_atom)
{
cWin->net_wm_sync_request_counter_value_low = (Atom)xEvent.xclient.data.l[2];
cWin->net_wm_sync_request_counter_value_high = (Atom)xEvent.xclient.data.l[3];
}
#endif
}
else if (xEvent.xclient.message_type == dnd.XdndEnter)
{
@ -911,7 +919,7 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
data1: n.origin.x
data2: n.origin.y];
}
}
}
break;
// same as ConfigureNotify but we get this event