Luca Barbieri <luca.barbi...@gmail.com> writes: > How about just having GLX open another connection to the X server and > use that to receive ConfigureNotify? > Since we are using direct rendering, we must be on the same machine, > so it's just a unix/TCP loopback connection and should always work. > Xlib stores the display name in _XDisplay.display_name so that works. > Furthermore, we can ask the kernel to send SIGIO for input on that fd, > and we wouldn't have to make any system calls at all to detect > resizes! > > It seems quite workable and even advantageous. How about it?
How do you make sure events are ordered correctly? Say a window is resized and the client receives the ConfigureNotify event before us, and it reacts drawing on the newly exposed areas: we aren't guaranteed to have received our event yet, so it might end up rendered in the old buffers. The semantics of DRI2InvalidateBuffers are not exactly the same as ConfigureNotify, it just means "your buffers are no longer valid", and there are other reasons we may want to send it (SwapBuffers). Besides, I doubt the fd is public Xlib interface, that would complicate things.
pgpGq0RUMEfeO.pgp
Description: PGP signature
------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev