Transparency

Keith Packard keithp@keithp.com
Sat, 07 Feb 2004 17:24:57 -0800


Around 14 o'clock on Feb 7, Matt Jones wrote:

> Is there any chance that someone could generate some well-documented
> samples/tutorials for new features in fd.o xserver? Uncover, xcompmgr
> and others spring to mind for the compositing extensions (although
> better commenting is needed), but things like ARGB windows aren't really
> explained anywhere (at least that I can find).

Ah, perhaps I should write a nice paper and present it at OLS then.  I've 
been trying to think what to do there, and a 'why' paper instead of a 
'how' paper seems like a good thing to do.

> I'd like to start working on a more modular (as the TODO requests)
> replacement of xcompmgr / full merge with metacity (I see that some
> basic code is already in there), but I'm not completely confident about
> my abilities with some of the new API.

That would be great.  You're in good company here; there are lots of 
performance questions that haven't been answered yet, and I keep learning 
about how things really work compared with how I expect them to work. I 
*never* expected that calling XSync would dramatically improve performance.

One thing that would be nice to have is a simple library which managed to 
track the server window hierarchy on the client side from the sequence of 
events; everyone using Composite is going to need that information, and 
duplicating the code in multiple places seems like a bad idea.  That 
wouldn't require anything beyond regular Xlib to get working.  Having 
something well tested and debugged would be a huge benefit before 
attempting to build a compositing manager; xcompmgr suffered (and may well 
still suffer) from broken window tracking.  All you need to manage is a 
sorted list of windows, each containing their geometry.  Simple in 
concept; a bit tricky in practice.

With that, doing a basic non-decorating compositing manager should be 
quite easy.  Adding fancy decorations can come afterwards.  I'm actually 
getting used to relatively simple decorations and starting to like the 
clean screen with no repaint noise.

-keith