Skip to content

Add DOUBLE-BUFFER extension specification.

Mike Sharov requested to merge (removed):master into master

This is the DOUBLE-BUFFER X extension specification, Xdbe in libX11.

All requests implemented except GetVisualInfo, because it returns an array of arrays of visual information structs, and I was unable to figure out how to write that in XML. Fortunately, the call is not necessary; it returns the list of visuals that support double buffering, and on modern hardware all visuals do.

There was also a problem marking the swap actions field in AllocateBackBuffer as the corresponding enum. c_client in libxcb has some unusual code for emitting documentation for enum fields that appears to be hardcoded specifically for xproto.xml, and fails to lookup the enum by name. It might be because while I did document the enum, the documentation is not emitted anywhere.

I tested by modifying one of the xcb tutorials. Allocating the back buffer, rendering and swapping the buffers, and getting the back buffer attributes work correctly.

Edited by Mike Sharov

Merge request reports