
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
Crystal-GL is the next generation of my crystal window decoration theme.
By using OpenGL to render itself, it simulates refraction and light mapping! Check out screenshots! NOW!
I name the deco HIGHLY EXPERIMENTAL! Don't blame me, if it brakes your computer into two, if it crashes kde or makes it unusable. THIS IS BETA, NO WARRANTY.
If it breakes kwin, even on startup, remove your ~/.kde/share/config/kwinrc file, to reset the kwin settings to default.
WARNING: You need to have write access to the 3D acceleration device, if exists. I.e.: /dev/dri/* or /dev/nv*. Otherwise the deco or kcontrol may crash.
It looks very similar to crystal, but has more eye-candy and smooth animations.
* Grabs your wallpaper and simulates bended glass, little lighting. You are able to specify the ior. ;)
* Support for button themes. Feel free to swamp me with cool themes. :D The themes are the same than the ones in crystal.
Knifty button theme by Enso
Disadvantages:
* Needs a working GL subsystem!!! Don't blame me, if yours is broken!
* Be careful on nvidia systems, if under load, the gl subsystem may become *real* slow, so my deco.
* Needs KDE >=3.2 and QT>=3.2 to compile.
* May be slower than any other deco
* May be fat
* May make you drool, and you might forget to eat, sleep or even breath!
-- INSTALL -------------------------
Basic Installation (from the console):
- Step 1
$ ./configure
OR: $ ./configure --prefix=`kde-config --prefix`
- Step 2
$ make
- Step 3 (as root)
# make install
If configure fails, check that you have both the Qt and KDE development headers installed. If you used a previous version before, you need to restart kde to use the upgraded version.
------------------------------------
Please give some feedback or tell me some improvement suggestions.
I would be very happy about some packages, like for Mandrake, Debian, Suse, Redhat, etc! PLEASE DON'T POST PACKAGES AS NEW CONTENT, just notify me and mail it to me, and I'll host them.
PROVIDED PACKAGES MAY NOT BE UP2DATE! Check out versions number!
Thanks to bitwit for each others help with the GL-deco stuff!
Enjoy! :)
Check out crystal (non-gl) at:
http://kde-look.org/content/show.php?content=13969
Sascha Hlusiak
15 years ago
* All packages up to date now
0.8.1:
* Made look antialiased caption damn good. Enabling this is RECOMMENDED now!
* Fixed menu button image bug
* Split up rendering process into four for each border. Maybe speed up or (most likely) speed down. :-/ Should fix nvidia-slowdown-bug on maximized windows.
* Added feature: "Scroll" through windows, by using the mouse wheel on the title bar, as well as an option in the configuration dialog to disable this immediately :>
* Improved config dialog a little
0.8.0:
* Added extreme slick "handpainted" button theme (thank you, Marco)
* Fixed some bugs, which almost drove me crazy on my notebook.
* Little speed up in the initialization
* Improved my "button-rendering-engine" a lot. Now button tinting uses GL, too.
* Added more options for button tinting.
* Added option to make the hover effect fade
* Added option to disable the transparency feature completely (don't dare!)
* Added information of direct rendering and glx version to the control center preview
* Got rid of some unneccessary code, probably put in a lot of more unneccessary code.
* Added a benchmark feature for my internal use (ctrl+alt+shift+RightButton on the title bar)
0.7.5:
* Added Knifty button theme (thanks to Enso)
* Fixed buttons
* Little code rearrangement, nothing visible
15 years ago
* All packages up to date now
0.8.1:
* Made look antialiased caption damn good. Enabling this is RECOMMENDED now!
* Fixed menu button image bug
* Split up rendering process into four for each border. Maybe speed up or (most likely) speed down. :-/ Should fix nvidia-slowdown-bug on maximized windows.
* Added feature: "Scroll" through windows, by using the mouse wheel on the title bar, as well as an option in the configuration dialog to disable this immediately :>
* Improved config dialog a little
0.8.0:
* Added extreme slick "handpainted" button theme (thank you, Marco)
* Fixed some bugs, which almost drove me crazy on my notebook.
* Little speed up in the initialization
* Improved my "button-rendering-engine" a lot. Now button tinting uses GL, too.
* Added more options for button tinting.
* Added option to make the hover effect fade
* Added option to disable the transparency feature completely (don't dare!)
* Added information of direct rendering and glx version to the control center preview
* Got rid of some unneccessary code, probably put in a lot of more unneccessary code.
* Added a benchmark feature for my internal use (ctrl+alt+shift+RightButton on the title bar)
0.7.5:
* Added Knifty button theme (thanks to Enso)
* Fixed buttons
* Little code rearrangement, nothing visible
bitwit
16 years ago
things may not appear active due to painter failure but the window structures can still be active.
during testing and development of these GL decos I have,
during an apparent lock, pressed ALT-F2 to get a requester to type in a command,
the requester was not painted but I typed in a command and hit enter just for a lark,
it executed !
Report
cyclon
16 years ago
Report
lordcrow
16 years ago
Report
ZeGeek
16 years ago
I noticed that render of some fonts like "URW Chancery" is very bad.
Report
mrvanes
16 years ago
One little wish though: I would _love_ to see a 'brighten' or 'lighten' feature for this deco so that even on dark backgrounds the foreground window would stand out a little more. Plus, I think the resulting glowing effect would be great!
Report
Deciare
16 years ago
I'm using Frugalware's KDE 3.3.2 with X.Org 6.8.1 and an nVidia card with driver version 1.0-6629.
Report
nuka
16 years ago
it might work, it might not.
Report
Deciare
16 years ago
Report
nuka
16 years ago
also, try using an older version, like .7.1. .7.2 didnt work at all for me, .3 is great so far.
you can also just change the deco when kde exits and change it back when it starts up, its not like youre constantly logging in/out of the computer anyway.
but most importantly, this bug should be fixed, this is just a temporary work-around.
Report
nuka
16 years ago
Report
Diablo82
16 years ago
Since composite won't be supported by kde team 'till it become stable, is there any way to add some kind of drop shadow option to crystagl? That would be great:)
Report
nuka
16 years ago
but it is not hardware accelerated.
and KDE 3.4 will have x.org support.
Report
ZeGeek
16 years ago
make[3]: Entering directory `/documents/crystalgl-0.7.2/client'
/usr/qt/3/bin/moc ./crystalclient.h -o crystalclient.moc
source='crystalclient.cc' object='crystalclient.lo' libtool=yes \
depfile='.deps/crystalclient.Plo' tmpdepfile='.deps/crystalclient.TPlo' \
depmode=gcc3 /bin/sh ../admin/depcomp \
/bin/sh ../libtool --silent --mode=compile --tag=CXX g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/freetype2 -I/usr/kde/3.3/include -I/usr/qt/3/include -I/usr/X11R6/include -I/usr/kde/3.3/include/kwin -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -DQT_PLUGIN -c -o crystalclient.lo `test -f 'crystalclient.cc' || echo './'`crystalclient.cc
In file included from /usr/X11R6/include/GL/glx.h:25,
from crystalclient.h:5,
from crystalclient.cc:16:
/usr/X11R6/include/X11/Xmd.h:132: error: conflicting declaration 'typedef long int INT32'
/usr/qt/3/include/qglobal.h:689: error: 'INT32' has a previous declaration as `typedef int INT32'
/usr/X11R6/include/X11/Xmd.h:132: error: declaration of `typedef long int INT32'
/usr/qt/3/include/qglobal.h:689: error: conflicts with previous declaration `typedef int INT32'
/usr/X11R6/include/X11/Xmd.h:132: error: declaration of `typedef long int INT32'
/usr/qt/3/include/qglobal.h:689: error: conflicts with previous declaration `typedef int INT32'
make[3]: *** [crystalclient.lo] Erreur 1
make[3]: Leaving directory `/documents/crystalgl-0.7.2/client'
make[2]: *** [all-recursive] Erreur 1
make[2]: Leaving directory `/documents/crystalgl-0.7.2/client'
make[1]: *** [all-recursive] Erreur 1
make[1]: Leaving directory `/documents/crystalgl-0.7.2'
make: *** [all] Erreur 2
I use GCC 3.4, Xorg 6.8, KDE 3.3, QT 3.3 on Gentoo.I'm sorry as I have no knowledge in C++ programming to send you a patch.
Report
ZeGeek
16 years ago
Report
dralgebra
16 years ago
Try this instead of ./configure:
./configure CXXFLAGS="-DQT_CLEAN_NAMESPACE"
then make. Let me know, if this worked, I will release a version with this bug fixed, soon.
Report
ZeGeek
16 years ago
The precedent windeco is replaced but the new is not shown : It looks like if kwin crashed. But I can move windows with alt+left click... (it is not possible if kwin crashed)
GLX is well loaded :
> glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.3
Report
dralgebra
16 years ago
Most likely the window deco is running fine, except that the opengl subsystem could not be initialized. If you run "kwin --replace" in a terminal, you might get error messages.
When the opengl could not be initialized, it simply draws nothing, leaving the part of the deco what it was before (try moving windows outside the borders of the screen).
Is this right? This is definitely a bug, because it did work before, but I need to find it. It works just fine on my system. :-/ Please wait until I can test this on another machine.
Report
dralgebra
16 years ago
Report
lucher
16 years ago
(1) a bug: long window title strings are not truncated (what about a fade effect like in kickers taskbar or inserting dots?). Moreover, they should be restricted to the area between the buttons; right now, long strings are drawn ON (overlapping) the buttons.
(2) text shadow color.
I would suggest to give the color of the text shadow some dynamic color detection: white shadow if the text color follows r*g*b < 128*3, else a black shadow. Right now, I have readability problems with dark text colors.
Regards
Report
dralgebra
16 years ago
(2) You are right, again. Dark color produces a dark shadow, so you'll have a very much blurred title bar text. You could disable the shadow effect, because I think, it makes the text unreadable every time, and it still has an anti-aliased effect. Thinking of something better...
Report
dadeisvenm
16 years ago
Sharp beveled edges would be pretty classy looking. :-D
Report
dralgebra
16 years ago
There is an option for simulating lighting, or not. If enabled, there comes a decent 3D effect on the borders, by simulating light. You can see this effect on my first screenshot.
This is rendered smooth, so without any sharp edges. I thought of this, too, let's see what I can do. :) But perhaps I should modify the refracting algorithm, too, to simulate something like gems!?
Report
nuka
16 years ago
i install it from source and then i go into the settings page and change the colors there. then i change the colors in kcontrol and window still cahnges with kcontrol. i thought i should log out and log back in. when i logged back in, kwin froze. i had to go to fvwm to change the windeco. when i logged back into KDE again, i was using another deco which worked. when i go to change it to crystal-gt, and it is jut messed up. its transparent with random non-moving crap in it. .7.1 never crashed on me. although once it became a black/white gradient and i had to reinstall it.
???
Report
dralgebra
16 years ago
I changed some stuff and moved the opengl initialization outside the constructor and *bla*.
So kwin still freezes on login in 0.7.2? What distrubution do you use, and which kde version? These problems should have been fixed for now, I'm suprised that it isn't.
What do the crappy windows contain? The old content of whatever was there before? Move other windows around, if the windows contain crap, it is most likely that the opengl subsystem could not be initialized. Please run kcontrol within a konsole and post me error message, that occur when selecting my deco.
Perhaps a restart of X can solve the problems? Looks strange..
Report
nuka
16 years ago
ill go back to .7.1 for a while.
Report