[PATCH] glx: Replace broken GLX visual setup with a fixed "all" mode.
Peter Clifton
pcjc2 at cam.ac.uk
Wed Feb 11 17:37:41 PST 2009
On Wed, 2009-02-11 at 12:07 +0000, Peter Clifton wrote:
> On Sun, 2009-02-08 at 13:00 +0100, Eric Anholt wrote:
> > With trying to match depths so that you didn't end up with a depth 24
> > fbconfig for the 32-bit composite visual, I broke the alpha bits on the depth
> > 24 X visual, which angered other applications. But in fixing that, the
> > pickFBconfigs code for "minimal" also could end up breaking GLX visuals if
> > the same FBconfig was chosen for more than one X visual.
> > We have no reason to not expose as many visuals as possible, but the old
> > "all" mode didn't match any existing X visuals to GLX visuals, so normal
> > GL apps didn't work at all.
> >
> > Instead, replace it with a simple combination of the two modes: Create GLX
> > visuals by picking unique FBconfigs with as many features as possible for
> > each X visual in order. Then, for all remaining FBconfigs that are
> > appropriate for display, add a corresponding X and GLX visual.
> >
> > This gets all applications (even ones that aren't smart enough to do FBconfigs)
> > get all the options to get the visual configuration they want. The only
> > potential downside is that the composite ARGB visual is unique and gets a
> > nearly full-featured GLX visual (except that the root visual might have taken
> > the tastiest FBconfig), which means that a dumb compositing manager could
> > waste resources. Write compositing managers using FBconfigs instead, please.
>
> I've just rebuilt my xorg with this applied, and seem to have lost some
> parts of the window decoration in compiz. Specifically, the window
> minimise / maximise close buttons, and the application icon.
>
> Could well be a compiz bug. Other than that, seems to be working so far.
Ok, seems to be related to another upgrade:
https://bugs.edge.launchpad.net/ubuntu/+source/compiz/+bug/327793
So it is not related to the above patch. Sorry for the noise.
--
Peter Clifton
Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA
Tel: +44 (0)7729 980173 - (No signal in the lab!)
More information about the xorg
mailing list