Window Transparency without Compositing Manager

Rémi Cardona remi at gentoo.org
Thu Aug 7 08:40:00 PDT 2008


coldfire a écrit :
> Yes, that would be great. You sure can post it anywhere (or as an attachment
> if its an option).

git clone http://www.lri.fr/~cardona/git/xcompmgr.git

It's in the "no-bling-just-composite" branch

> What I am looking for in xcompmgr is specifically the routine of how does it
> blend the pictures to make alpha-transparent. I would look into your trimmed
> version of code as well.

The overall idea (if I understand things correctly) is that xcompmgr
will create a server side XRender Picture of the corresponding
Window/Pixmap, and then will call XRenderComposite with an alpha layer
for the aforementioned Picture.

There are 2 cases :
  - the Window/Pixmap already has an alpha layer (ARGB pixmap)
  - the Window only has a global alpha value (using the
_NET_WM_WINDOW_OPACITY atom), in which case an alpha layer is "built"
from scratch with the opacity value.

Both XRenderComposite calls on lines 499 and 518 of xcompmgr.c are
"easy" enough to understand with some reading.

Cheers

-- 
Rémi Cardona
LRI, INRIA
remi.cardona at lri.fr
remi at gentoo.org



More information about the xorg mailing list