Hi, I have added compiz support to aquamarine. You can download it directly from beryl svn: svn co svn://svn.beryl-project.org/beryl/trunk/aquamarine/ To install: ./autogen.sh ./configure --enable-debug=full ./make ./sudo make install You can use kcontrol to set the decoration and decoration specific settings. You can post bugs to the beryl bugtracker at http://bugs.beryl-project.org . Please add your KDE and QT version and a backtrace (if available) to your bugreport. Have a lot of fun Dennis
Looks promising. I had a quick look at the code and I have some comments/questions... I can see that you're allocating pixmaps that are the same size or even a bit larger than the client windows. That adds some pretty nasty memory consumption, which we can't live with. Have you tried fixing that? Looking at the code, it seems that it shouldn't be very hard to fix. I noticed that the default decorations used before any window specific ones are created are broken. Shouldn't be hard to fix that though. I can see that the code that changes opacity, brightness.. is updating the properties on windows directly. You shouldn't do that. You should send client messages to the WM instead. Other than these things it looks good. I would much rather support this than write my own kde-decorator. I'll try to get the issues I've pointed out here fixed asap and I'll send you some patches. btw, I noticed that the copyright notice in each file says that it uses code of Emerald and KWin. I didn't see a lot of gtk-window-decorator code in the files I looked at but I know that emerald contains large chunks of gwd code without gwd's copyright info. If this is actually the case for aquamarine as well, please add the gwd copyright info. -David On Wed, 2006-11-15 at 11:23 +0100, Dennis Kasprzyk wrote:> Hi, > > I have added compiz support to aquamarine. > > You can download it directly from beryl svn: > svn co svn://svn.beryl-project.org/beryl/trunk/aquamarine/ > > To install: > ./autogen.sh > ./configure --enable-debug=full > ./make > ./sudo make install > > You can use kcontrol to set the decoration and decoration specific settings. > > You can post bugs to the beryl bugtracker at http://bugs.beryl-project.org . > Please add your KDE and QT version and a backtrace (if available) to your > bugreport. > > Have a lot of fun > Dennis > > _______________________________________________ > compiz mailing list > compiz@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/compiz
Hi David, the code for emerald is GPLv2+ and gtk/gnome-window-decorator is the same. So this is fine. I will adjust the copyrights in beryl debian/copyright to reflect this in upstream and also for debian. I just did a code compare and saw some of your code. I wasn't sure if Quinn used any bits from gtk-window-decorator (I never looked), but there are code bits that came from yours, so this will be fixed. Thank you. Shawn. ----- Original Message ---- From: David Reveman To: Dennis Kasprzyk Cc: compiz Sent: Wednesday, November 15, 2006 2:11:57 PM Subject: Re: [compiz] Aquamarine: The KDE Window Decorator Looks promising. I had a quick look at the code and I have some comments/questions... I can see that you're allocating pixmaps that are the same size or even a bit larger than the client windows. That adds some pretty nasty memory consumption, which we can't live with. Have you tried fixing that? Looking at the code, it seems that it shouldn't be very hard to fix. I noticed that the default decorations used before any window specific ones are created are broken. Shouldn't be hard to fix that though. I can see that the code that changes opacity, brightness.. is updating the properties on windows directly. You shouldn't do that. You should send client messages to the WM instead. Other than these things it looks good. I would much rather support this than write my own kde-decorator. I'll try to get the issues I've pointed out here fixed asap and I'll send you some patches. btw, I noticed that the copyright notice in each file says that it uses code of Emerald and KWin. I didn't see a lot of gtk-window-decorator code in the files I looked at but I know that emerald contains large chunks of gwd code without gwd's copyright info. If this is actually the case for aquamarine as well, please add the gwd copyright info. -David On Wed, 2006-11-15 at 11:23 +0100, Dennis Kasprzyk wrote:> Hi, > > I have added compiz support to aquamarine. > > You can download it directly from beryl svn: > svn co svn://svn.beryl-project.org/beryl/trunk/aquamarine/ > > To install: > ./autogen.sh > ./configure --enable-debug=full > ./make > ./sudo make install > > You can use kcontrol to set the decoration and decoration specific settings. > > You can post bugs to the beryl bugtracker at http://bugs.beryl-project.org . > Please add your KDE and QT version and a backtrace (if available) to your > bugreport. > > Have a lot of fun > Dennis > > _______________________________________________ > compiz mailing list > compiz@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/compiz_______________________________________________ compiz mailing list compiz@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/compiz
On Wed, 2006-11-15 at 21:09 +0100, Dennis Kasprzyk wrote:> Am Mittwoch, 15. November 2006 20:11 schrieben Sie: > > Looks promising. I had a quick look at the code and I have some > > comments/questions... > > > > I can see that you're allocating pixmaps that are the same size or even > > a bit larger than the client windows. That adds some pretty nasty memory > > consumption, which we can't live with. Have you tried fixing that? > > Looking at the code, it seems that it shouldn't be very hard to fix. > > > > This was the only way I found to redirect QT drawing to a normal X Pixmap. If > you have an better idea this would be nice.Yes, there's a few ways to do this better. I'll look into it.> > > I noticed that the default decorations used before any window specific > > ones are created are broken. Shouldn't be hard to fix that though. > > > > Maybe there is a difference between beryl and compiz, the default decorations > worked in beryl last time I tested.By default, I mean the global decorations created for all windows when the decorator starts up. If you suspend the aquamarine process and open a new window, you'll see these default decorations.> > > I can see that the code that changes opacity, brightness.. is updating > > the properties on windows directly. You shouldn't do that. You should > > send client messages to the WM instead. > > > > This was for me the simplest way to do it. If you want to fix it, fell free > and send a patch to the beryl bugtracker. > > > Other than these things it looks good. I would much rather support this > > than write my own kde-decorator. I'll try to get the issues I've > > pointed out here fixed asap and I'll send you some patches. > > > > I would be very happy to see any improvements. You can send it as patches to > the bugtracker, or you could ask quinn to get direct access to the beryl svn > repository. > > > btw, I noticed that the copyright notice in each file says that it uses > > code of Emerald and KWin. I didn't see a lot of gtk-window-decorator > > code in the files I looked at but I know that emerald contains large > > chunks of gwd code without gwd's copyright info. If this is actually the > > case for aquamarine as well, please add the gwd copyright info. > > > > Done. If you prefer a much detailed reference to gwd then send me your > proposal.the copyright line is enough. -David