Tuomo Valkonen wrote:
>On Fri, Jun 27, 2003 at 12:14:29PM +0100, Sam Mason wrote:
>> Tuomo Valkonen wrote:
>> It seems to work in my version of X.
>
>I played with this a few weeks ago (thought of modifying xosd) and, I don't
>think there's any true translucency but some trick that works half of the time
>because X never fills the window with the background colour.

I'm well aware of the "hack" that most current terminals do to provide
"translucent windows".  All they do, is to grab a shot of what's
underneath, then just do a blend at application level.

I gave the source of the program I sent you a quick browse, and
thought it was doing something different.  I thought the code was
using Xft, because that was the easiest way into the Xrender API -
rather than because it's got some magic built in.  I guess all thats
happening, is that Xft contains the magic and nothing fundamental has
changed.

>What if the window in the background is changed?

I agree, you need server support for this sort of thing.

>I even looked up some KDE source code for 
>translucent menus and what they did is grab the screen area normally and then
>combine the menu and the grab with Xrender for the effect.

Sounds similar to the things I've seen.

>And there's no reason why window translucency shouldn't work with normal 
>X drawing primitives as well because you _need_ a backing store for the
>(visible areas of the) translucent window.

I agree; and I think they will.  All you, should, need to do is to
specify the transparency of the various parts of the windows (probably
with a grayscale-esque pixmap).  And the server should take care of
the rest.  It would probably handle it by using a backing store for
each window, but that's up to the server to decide how it wants to
implement things.

>(X -version => 4.2.1.1; I refuse to upgrade to 4.3 thanks to Xkb keymaps
>that are not fully accessible with xmodmap. Dumping the current keymap
>before upgrading might work but I'm not eager to try..)

I'm a bit simplistic in this respect.  I generally just run the latest
of everything; and get pissed off with my package management system
when it doesn't handle things nicely.

<rant>
  I'm using a source based distribution, so why can't I say
  "automatically apply these patches to every version of this bit of
  software before you build it" let me know it goes wrong, but
  generally be a bit more intelligent that how it is at the moment.

  I'm hoping I'll get pissed off enough, to eventually to hack
  something together of my own designs.
</rant>

Sorry if that's a bit rushed,  I'm supposed to be at home now,
  Sam

Reply via email to