From kde-devel Fri May 21 10:14:45 1999 From: Mosfet Date: Fri, 21 May 1999 10:14:45 +0000 To: kde-devel Subject: Re: kbgndwm's future X-MARC-Message: https://marc.info/?l=kde-devel&m=92723502118310 I have also done some work with option 2 and you are right, it is very slow for toplevel widgets that change masks often, but is quite nice for static things like window decoration. Nonetheless you are right and we will need to support psuedo-transparency for things like terminals whose contents change far too often for an XShape mask (and also really need to support shading). I have played around with sharing Pixmap ID's among different applications for the widget theme engine but don't really have it working yet. When I do I was thinking of implementing a specialized QPixmap for the root window that automagically creates a new (detached) pixmap off of the root window Pixmap ID. On Wed, 19 May 1999, Geert Jansen wrote: > Antonio Larrosa wrote: > > > Hi, > > > > I would like to implement transparent backgrounds in konsole before I start > > exams, but I'm not completely sure if kbgndwm will stay as it is for much > > long (due to kdesktop talking and all that). > > Hi, > > I brought this up some time ago. The outcome of the discussion was that > (pseudo) transparent widgets is possible in the following ways: > > 1) kbgndwm exports the background as a pixmap (either to a file or in shared > memory) and programs use QWidget::setBackgroundPixmap(). > > 2) True transparency: QWidget::setMask(). This only offers 100% > transparency, no alpha blending etc. It is also very slow if the > transparency mask is complex (i.e. text in konsole). > > 3) The only good way: write a X extension to support alpha channel > transparency. > > >From your post I see that you want to render the background yourself. Maybe > 1) is a better alternative for that. > > I implemented 1) as a proof of concept. You can still find my patch at > http://www.stack.nl/~geertj/kde/. > > Greetings, > -- > Geert Jansen email: > Phylosopher, Physicist PGP key ID: 0xD2B5E7CE -- Daniel M. Duley - Unix developer & sys admin. mosfet@kde.org mosfet@jorsm.com