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.

Attachment: 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

Reply via email to