SmSpillaz
April 28th, 2007, 01:40 PM
Hello all! I am documenting weekly changes in the builds of CompComm, a *new* project from the Compiz-Extra and Beryl.
This will live here until an official blog is put up,
This WEEK in CompComm for April 28, Episode 1
Background
Well the new project has brought a number of things. New plugins, New backends and a new community! There is so much more than meets the eye in the gitweb.opencompositing.org repository. Things that have been promised to be done are being done. Be ready for you world to be rocked! ;-)
New Stuff
Plugins
Well, there are a number of new plugins that have been introduced thanks to the merge. I will give screenshots of each in action
Ring switcher
As can be seen, the ring switcher has been completely re-written. As usual for all people who used Beryl, <Super>-<Tab> will change windows accordingly. The big change is that the plugin is no no longer based on the original switcher plugin but instead is based on the Scale plugin. This brings a much more natural timestep where the windows actually bounce inwards when rotated around. The next improvement is that the windows also zoom into place, much like the way it was done with Scale. Note, to see the window titles, you must enable the text plugin, which is found in the '/plugins/beryl-premerge' directory on git://git.opencompositing.org/compcomm
http://img341.imageshack.us/img341/2800/ringcw0.png[/url:d77da]
Rotate around your windows and see far more than the original switcher
WinRules
I won't be posting a screenshot for this plugin as it would not demonstrate much. This plugin essentially allows you to set specific rules for each window such as "Always on top" or "Sticky." It generally mimic's KWins abilities in window management
Extra WM Functions
This provides more functions that WinRules does not yet cover, such as "Set window fullscreen" and toggle whether you want that window to be redirected (Or eye-candy-ified) or static. This generally improves the performance of some windows. Note that if the window is un-redirected, then Compiz (The core to CompComm) will no longer be able to control it. This means that you will not be able to move the window or resize it, No effects will be applied and a decoration will not be drawn on the un-redirected window
FirePaint
You have to see it to believe it. This feature has been requested for so long and now it is possible
[url=http://imageshack.us:d77da]http://img168.imageshack.us/img168/7800/firepaintpn0.png[/url:d77da]
Yes, can you believe it? I can. This plugin essentially uses the code for the particle subsystem built into animation. It then reads the position of the cursor so that you can actually draw fire on screen. Right now the fire does not burn off and stays there until you press <Shift>-<Super>c for clear and then it suddenly goes up in a poof of smoke. It can be retrieved from git like this: git clone [url="git://git.opencompositing.org/compcomm/plugins/firepaint"]git://git.opencompositing.org/compcomm/ ... /firepaint (http://imageshack.us:d77da). I can't say any more. This is the star of the show.
Compiz-Scheme
The final plugin that you should be introduced to today is racarr's compiz-scheme plugin. Now, you probably thinking "What scheme==schema?!?! Gconf? NOES!."
Its far different. Compiz scheme is a plugin scripting language that allows you to use very specific rules to control how Compiz control windows. Its all code right now and may seem a little complicated but will hopefully get a GUI through the new LibBS settings manager (Oops, did I say something?) Anyways, here is a snippit from racarr's post on the mailing list
This is something basic:
[quote:d77da]
#Following snippet gives you transparent dropdown menus.
(window-rule #Define a window rule
(make-rule #Make a rule passed in
(set-opacity-when # Set opacity of a window when
(window-is dropdownp) # The window is a dropdown menu
0.75))) # Set to 0.75
[/quote:d77da]
But it can be extended further.
[quote:d77da]
#Following snippet shades maximized windows when you grab them.
(grab-rule # Define a window grab rule.
(make-rule # Make a rule passed to grab-rule
(if (maximizedp w) # If window maximized.
(toggle-shaded w)))) #Shade window
[/quote:d77da]
For those who don't know, the (#) symbol means a 'comment' or a bit of code that is ignored by the compiz-scheme interpreter.
That concludes the new plugins section. Now onto NEW FEATURES!
New features
Yes, its the moment you've all been waiting for. The devolpers have said "Give it more time" for a while now but LibBS is now in the git.opencompositing.org repository. LibBS, for those who dont know is a brand new settings management system that was imposed by Beryl as LibBerylSettings a while back. LibBS is far more advanced though and can handle settings backends such as GConf, Flat File, and KConfig for us KDE users. LibBS is a huge step forward in development as it makes addressing settings as easy as pie!. But how will we address these settings? Well, that brings us to the next feature which is...
LibBS settings manager
Yes, we can now use something different. Something different than painstakingly editing GConf keys. Something different than tediously editing settings files by hand. Its not perfect and definitely not the final design but_it_is something else thats slightly easier to use....
[url=http://imageshack.us:d77da]http://img100.imageshack.us/img100/7629/libbsqm7.png[/url:d77da]
Here is a screenshot. Bear in mind that this is far from what the final version will look like. Also, it is just a technical preview and many things still do not work in the settings-manager. For example, when sliding slidebars, the numbers and settings do not change.
Final Words
Well, thats the end of This Week in CompComm. I hope you enjoyed reading this and learning tons about the new features that have come about. Bear in mind that most of this stuff is still a a technical preview and is buggy and might not work. However, during this time of the merge when there is much bickering, fighting and tough decision making going on, it is important for the users to realize that work is being done. The developers are trying their hardest to get this merge underway. So lets put our hands together for the Devs!
See you next time on This Week in CompComm in 2 weeks as I will be away.
"Another TWiCC is in the Can!"
This will live here until an official blog is put up,
This WEEK in CompComm for April 28, Episode 1
Background
Well the new project has brought a number of things. New plugins, New backends and a new community! There is so much more than meets the eye in the gitweb.opencompositing.org repository. Things that have been promised to be done are being done. Be ready for you world to be rocked! ;-)
New Stuff
Plugins
Well, there are a number of new plugins that have been introduced thanks to the merge. I will give screenshots of each in action
Ring switcher
As can be seen, the ring switcher has been completely re-written. As usual for all people who used Beryl, <Super>-<Tab> will change windows accordingly. The big change is that the plugin is no no longer based on the original switcher plugin but instead is based on the Scale plugin. This brings a much more natural timestep where the windows actually bounce inwards when rotated around. The next improvement is that the windows also zoom into place, much like the way it was done with Scale. Note, to see the window titles, you must enable the text plugin, which is found in the '/plugins/beryl-premerge' directory on git://git.opencompositing.org/compcomm
http://img341.imageshack.us/img341/2800/ringcw0.png[/url:d77da]
Rotate around your windows and see far more than the original switcher
WinRules
I won't be posting a screenshot for this plugin as it would not demonstrate much. This plugin essentially allows you to set specific rules for each window such as "Always on top" or "Sticky." It generally mimic's KWins abilities in window management
Extra WM Functions
This provides more functions that WinRules does not yet cover, such as "Set window fullscreen" and toggle whether you want that window to be redirected (Or eye-candy-ified) or static. This generally improves the performance of some windows. Note that if the window is un-redirected, then Compiz (The core to CompComm) will no longer be able to control it. This means that you will not be able to move the window or resize it, No effects will be applied and a decoration will not be drawn on the un-redirected window
FirePaint
You have to see it to believe it. This feature has been requested for so long and now it is possible
[url=http://imageshack.us:d77da]http://img168.imageshack.us/img168/7800/firepaintpn0.png[/url:d77da]
Yes, can you believe it? I can. This plugin essentially uses the code for the particle subsystem built into animation. It then reads the position of the cursor so that you can actually draw fire on screen. Right now the fire does not burn off and stays there until you press <Shift>-<Super>c for clear and then it suddenly goes up in a poof of smoke. It can be retrieved from git like this: git clone [url="git://git.opencompositing.org/compcomm/plugins/firepaint"]git://git.opencompositing.org/compcomm/ ... /firepaint (http://imageshack.us:d77da). I can't say any more. This is the star of the show.
Compiz-Scheme
The final plugin that you should be introduced to today is racarr's compiz-scheme plugin. Now, you probably thinking "What scheme==schema?!?! Gconf? NOES!."
Its far different. Compiz scheme is a plugin scripting language that allows you to use very specific rules to control how Compiz control windows. Its all code right now and may seem a little complicated but will hopefully get a GUI through the new LibBS settings manager (Oops, did I say something?) Anyways, here is a snippit from racarr's post on the mailing list
This is something basic:
[quote:d77da]
#Following snippet gives you transparent dropdown menus.
(window-rule #Define a window rule
(make-rule #Make a rule passed in
(set-opacity-when # Set opacity of a window when
(window-is dropdownp) # The window is a dropdown menu
0.75))) # Set to 0.75
[/quote:d77da]
But it can be extended further.
[quote:d77da]
#Following snippet shades maximized windows when you grab them.
(grab-rule # Define a window grab rule.
(make-rule # Make a rule passed to grab-rule
(if (maximizedp w) # If window maximized.
(toggle-shaded w)))) #Shade window
[/quote:d77da]
For those who don't know, the (#) symbol means a 'comment' or a bit of code that is ignored by the compiz-scheme interpreter.
That concludes the new plugins section. Now onto NEW FEATURES!
New features
Yes, its the moment you've all been waiting for. The devolpers have said "Give it more time" for a while now but LibBS is now in the git.opencompositing.org repository. LibBS, for those who dont know is a brand new settings management system that was imposed by Beryl as LibBerylSettings a while back. LibBS is far more advanced though and can handle settings backends such as GConf, Flat File, and KConfig for us KDE users. LibBS is a huge step forward in development as it makes addressing settings as easy as pie!. But how will we address these settings? Well, that brings us to the next feature which is...
LibBS settings manager
Yes, we can now use something different. Something different than painstakingly editing GConf keys. Something different than tediously editing settings files by hand. Its not perfect and definitely not the final design but_it_is something else thats slightly easier to use....
[url=http://imageshack.us:d77da]http://img100.imageshack.us/img100/7629/libbsqm7.png[/url:d77da]
Here is a screenshot. Bear in mind that this is far from what the final version will look like. Also, it is just a technical preview and many things still do not work in the settings-manager. For example, when sliding slidebars, the numbers and settings do not change.
Final Words
Well, thats the end of This Week in CompComm. I hope you enjoyed reading this and learning tons about the new features that have come about. Bear in mind that most of this stuff is still a a technical preview and is buggy and might not work. However, during this time of the merge when there is much bickering, fighting and tough decision making going on, it is important for the users to realize that work is being done. The developers are trying their hardest to get this merge underway. So lets put our hands together for the Devs!
See you next time on This Week in CompComm in 2 weeks as I will be away.
"Another TWiCC is in the Can!"