Re: pseudo transparency
- From: Olivier Chapuis <olivier chapuis free fr>
- To: mej eterm org, otaylor redhat com
- Cc: wm-spec-list gnome org
- Subject: Re: pseudo transparency
- Date: Sun, 13 Jan 2002 14:08:31 +0100
On Fri, Jan 11, 2002 at 02:49:28PM -0500, Owen Taylor wrote:
>
> Olivier Chapuis <olivier chapuis free fr> writes:
>
> > About the E method. Here there is a de facto standard which
> > uses the ESETROOT_PMAP_ID and the _XROOTPMAP_ID atoms. Maybe,
> > this can be documented in the wm-spec? If I well understand
> > this method, applications should use the _XROOTPMAP_ID and
> > setroot programs should destroy the pixmap if
> > ESETROOT_PMAP_ID == _XROOTPMAP_ID
> > before setting the background with its own pixmap (and
> > then set _XROOTPMAP_ID and also ESETROOT_PMAP_ID if its
> > own pixmap can be destroyed). That's it?
>
> A program that wants to set the background should:
>
> - Create a persistant pixmap by calling to the server with:
>
> dpy = XOpenDisplay(display_name);
> XSetCloseDownDisplay (dpy, RetainPixmap);
> pmap = XCreatePixmap (dpy, DefaultRootWindow (dpy), width, height,
> DefaultDepthOfScreen (DefaultScreenOfDisplay (dpy)));
> XCloseDisplay (dpy)
>
> - Grab the server
>
> - See if ESETROOT_PMAP_ID is set
> - If so, call XKillClient(xdisplay, *(Pixmap*)data_esetroot)
> - Change ESETROOT_PMAP_ID and _XROOTPMAP_ID to point to the
> new pixmap
> - Set the pixmap as the background for the root window
>
> - Ungrab the server
>
Thanks Owen and Hello Michael (I do not know if you monitor
the wm-spec list).
I've take a look at the Esetroot source code (0.9.1) and it
does not grab/ungrab the server. This cause a program (e.g.,
rxvt) which use parental relativity for pseudo-transparency
and which monitor _XROOTPMAP_ID for background update to fail
to update its background (as it receives the _XROOTPMAP_ID
property before the background change).
Moreover, there are surely other good reason for this
grab/ungrab.
Regards, Olivier
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]