Truly Transparent gnome-terminal

Mike A. Harris mharris at redhat.com
Sat Sep 13 07:23:16 UTC 2003


On Fri, 12 Sep 2003, Joseph Phillips wrote:

>Please pardon my vanity, but will the next release of RHL support truly
>transparent gnome-terminals?
>
>I'm not talking about the pseudo-transparency of the past, wherein the
>terminal simply displays the portion of the background image.  With this
>sort of fake-transparency, any window, that comes intermediate between
>the terminal and the background image, is not displayed.  Instead, the
>background image is displayed, even though the object directly beneath
>the terminal is another window.
>
>I know this is a cosmetic feature, but I'd be willing to bet that, as
>far as cosmetic features go, this one ranks pretty high up there in
>terms of feature-requested popularity.

If you're refering to the kind of translucency provided by 
Windows XP and Mac OS/X, then the short answer is currently 
"not any time soon".

The longer answer is that this has nothing to do with 
gnome-terminal, but rather it has to do with X11.  The X11 
protocol has no concept of window opacity/translucency, and 
applications are thus not designed to take that concept into 
account either.  What people refer often to as "true 
translucency" (some calling it transparency, however the two 
words have entirely different meanings), is something that needs 
to be done directly in the X server core, and in order to do 
that, a new X11 extension needs to be designed and written.

Keith Packard, whom has designed and implemented among various
things - the Render extension, RandR extension, Xft client side
font library, fontconfig, Xcursor colour animated alpha blended
mouse cursors, and numerous other core X extensions and other
major parts of XFree86 and X11, is the most likely person to do
this work.  He has done some research on the topic of adding
translucency to the X server.  It is a very complex topic, and
will require a fair amount of research and design, and likely a
number of implementation experiments before a design is settled
on.  It is believed that this work will require major changes to
the X server on all levels from the DIX to the DDX, which
basically includes everything from primitive drawing code to
device drivers.  This amount of work is going to take a long
time, in particular if Keith is the only one working on it, and
then it will likely require all of the drivers to be updated to
support it.

You can find Keith's whitepapers on the Translucent Window 
Extension on his website:  http://keithp.com

There is no work being done on this at the time being by Keith or 
anyone else to the best of my knowledge, and while Keith has an 
interest in doing it, he has interests in many other things as 
well, such as completing the Render extension, completing the 
RandR extension (rotation and reflection), developing his kdrive 
X server (TinyX), and numerous other projects he has his fingers 
in.  When he digs into this (assuming nobody else has attempted 
it yet), it will more than likely be volunteer work done on his 
own time, and so it'll likely be completed whenever he gets 
around to completing it, assuming he has time.

The other option is for some corporation to want such a feature
bad enough to fund the development of it, and contribute the work
to the community.  The likelyhood of anyone paying the rather
large sum of money it would take to have such a feature
implemented, in my personal opinion is very small, since it 
is only an eye candy feature, and serves little to no really 
useful purpose that could justify the cost it would take to 
implement.  The money that some company might put up to develop 
such a feature, would be much better spent on implementing other 
things that are missing in X11 such as hotplug input device 
autodetection, accelerating render support in the rest of the
most prominent video drivers, improving i18n support, and many 
other features that are sorely missing and are required for much 
more practical reasons than hollywood special effects.

The bottom line is:  Don't hold your breath for a couple years.


-- 
Mike A. Harris     ftp://people.redhat.com/mharris
OS Systems Engineer - XFree86 maintainer - Red Hat





More information about the test mailing list