On Feb 5, 2008 6:46 PM, seventh guardian <[EMAIL PROTECTED]> wrote:
> On Feb 2, 2006 1:23 PM, Dominik Vogt <[EMAIL PROTECTED]> wrote:
> > On Thu, Feb 02, 2006 at 01:42:44PM +0100, Marc Lehmann wrote:
> > > On Thu, Feb 02, 2006 at 09:11:40AM +0100, Dominik Vogt <[EMAIL
> > > PROTECTED]> wrote:
> > > > > The other small uncleanlieness is the hardwired -1 for the pixel
> > > > > values,
> > > > > but that should hardly create any problems (all bits set boil down to
> > > > > opaque white - its not visible anyways, and is guarenteed to exist in
> > > > > such
> > > > > visuals).
> > > >
> > > > But doesn't this change break normal (non-ARGS) 32 bit TrueColor
> > > > visuals?
> > >
> > > Sure, but is there reason to believe such weird beasts exist?
> > >
> > > One could improve the test by checking wether all masks or'ed together are
> > > less than 32 bit.
> > >
> > > However, I just had a look at xlib, and it detects argb visuals simply by
> > > comparing the depth against 32 (without any further tests, even):
> > >
> > > if (dp->depth == 32 && getenv ("XLIB_SKIP_ARGB_VISUALS"))
> > >
> > > So this seems to be the expected way to detect those visuals at the
> > > moment.
>
> There is a better way of detecting this, which involves using
> XGetVisualInfo. I've succesfuly implemented a test program and it
> works perfectly, so this is not an issue anymore. But making the
> detection for every frame window shouldn't be good for performance.
>
> > Thinking more about the whole issue I come to the conclusion that
> > the ARGB extension is simply broken if it cannot handle the
> > CopyFromParent depth and visual. Is there any reason why one
> > should have to do that manually?
>
> I believe this is required as it is, since it is assumed that the
> parent (root window) doesn't have an argb visual. So it's not possible
> to just copy the root window's visual.
>
> Is there any reason not to just change the root window's visual? That
> should make things simpler..
I've committed a slightly modified version of the patch, now
implementing a proper argb detection.
I've tested it using the famous "Keith Packard's hacked xterm" and it
works. The only problem is that the transparent window doesn't drop a
shadow, but that's probably xcompmgr's fault.
I'd like to see this evolve into a proper argb support, which would
allow real transparency in the menus and window frames.. Maybe later.
Cheers,
Renato