The Community News returns again, after an absence that I will try to avoid in future :P In the time between the previous community news and the last, there have been a number of new and interesting cool features added to Compiz-Fusion. The changes have taken place due to our community and our very own onestone who has added a slew of KDE 4 composite features to Compiz. Some highlights this week are:
KDE 4 Window decorator plasma integration
Show Mouse, and Area-Based maginification through the mag plugin
True blending of wallpapers and cubecaps
A number of bugs have also been fixed (Not the emerald crash at random, sorry!) which should improve your Compiz Fusion experience marginally
News in Bugs
- Temporary fix for certain windows loosing their shape attributes while using freewins (link)
- Atlantis 2 works a bit better with normal monitors
- Fix unnecessary compile warning with the screensaver plugin
- Better option grouping in the Winrules plugin
- Maximumize plugin was placed in the Window Management category
- Individual plugin Makefiles were updated to notify the user as to when the plugin should be installed globally because it depends on other plugins
- The sesssion plugin was updated to use core session functions, it should allow session management in the near future
- Fix visual glitch when using cube reflections with 3D
- The ‘Brightness and Saturation’ plugin has been placed in the accessibility category
- Some freezes fixed in animation, particularly with superkaramba
- Display glitches such as animation artifacts and dark textures in animation fixed.
- Fix trailfocus glitches when windows span multiple viewports
- Improved metadata in the showmouse plugin
- Fragment shader fixes for the ‘fisheye’ mode of mag. The effect should work on the NVIDIA and Intel platforms. It may work for ATI users who use linux or have somewhat decent AIGLX support with fragment_program
- ‘Fisheye’ plugin merged into mag as another mode
- Ability to disable KDE4 support in compiz-fusion-debain platforms
- Some working option support in the Wiimote plugin
News in Features
KDE 4 integration!Well onestone has been coding hard since KDE 4 hit the road to incorporate some of the more usefule KDE 4 window manager features into Compiz Fusion. The first is a simple plugin called ‘loginout’, which essentially dims the screen when it sees particular windows with a separate seetting for logging in and logging out. If you start Compiz Fusion before these windows appear, you can essentially dim out your desktop until these windows go away, when they will come back. Here is where it works
- KDE 3: Login only
- KDE 4: Login and Logout
- GNOME: Logout only
KDE 4 Window DecoratorThe KDE Window Decorator has also been improved to add support for KDE 4 Window Decorations, as well as plasma integration into the drawing of the switcher window. The following is a screenshot provided by onestone.
Mouse-PollingBecause of the current architecture of Compiz, the following plugins require mouse-polling (checking the location of the cursor every number of milliseconds). Mouse-polling is generally inefficient and does tend to eat up CPU cycles (and also has a lot of overhead), so onestone has create a generic mouse-polling plugin in order to just do one poll instead of multiple plugins polling the mouse at the same time. This plugin must be installed like this:
BUILD_GLOBAL=1 sudo make install
so that other plugin can reference it’s pkgconfig and header files properly.
Fixed Area MagnificationOne of the more touted and interesting features of KDE 4 was not only the ability to zoom the entire screen, but just to create a box of zoom and to zoom a particular area. Onestone has implemented this in Compiz-Fusion, but also with some other eyecandy, as illustrated in the screenshots below:
This screenshot shows the simple mode, where magnification is fixed along the cursor to a particular area.
These screenshots show the fisheye mode, where the nearest things to your cursor are zoomed more. This looks very cool in action
These screenshots show the recently added image mode, where an image overlay can be used on the magnification area to show a real magnifying glass (or whatever) where you are magnifiying.
All modes simple zoom in and out with Shift-Super-Scrolling. Below is a YouTube video showing this in action
This video shows the Fisheye and Image modes
Showmouse plugin:Primarily as a more show-offy version of the KDE version of the showmouse plugin, this plugin uses onestone’s particle system to find the mouse, literally by surrounding it with what appears to be stars on fire. This plugin can be configured to a great extent, below is a YouTube video showing it in action (Thanks Darknesssssskrad!)
These plugins have not yet been backported to 0.6.0 by onestone yet, but I have provided a preliminary step in getting this done
Rubik’s Cube pluginThis plugin, by metastability, turns your cube into a literal rubiks cube. It is designed to be on with screensaver mode on and rotates bits of your cube during manual rotation or while the screensaver cube rotation mode is on. Here is a video of itI found on YouTube
Maze Game pluginThis plugin, by rhodar is another inside-the-cube plugin which creates a small maze-game where rotating the cube around will move around the small ball. It is a first, in that it is the first plugin to use the getRotation() function to some-more useful use and is a quite neat demo of what Compiz is capable of. YouTube video below!
CubeFX (AKA CubeDBUS) improvements
b0le’s CubeDBUS plugin has yet-again been improved, with a new particle system (Particles inside the cube) and animated models. Some screenshots below (YouTube Video coming soon!)
Improved model loading (Coming Soon)
NB: The currently, cubefx model loading is currently broken due to the big code change brought on by model animation. Revert to the previous commit if you want to use the old system.
Wallpaper and CubeCaps, true transparencyOne of the more annoying issues with the wallpaper plugin is that it could not change opacity when the cube was supposed to be transparent, leaving us only with transparent caps. OasisGames has changed this situation with a patch that not only makes wallpaper listen to the transparency settings, but also introduces true image transparency, where transparent bits of images are fully transparent, creating a goo effect with your images. Screenshots below.
Wiimote and WiitrackOver the winter (U.S) and summer (Asia, Australia ;-)) OasisGames and I have been working on a headtracking solution using the Nintendo Wii Remote. It mostly takes its inspiration from the video below, created by JCL, but does the same with compiz and the Z-stacking of your windows. This means that, if you have the right gear, you are literally able to look around your desktop in full 3D.
The above video shows mouse tracking at work
Of course, the fine details are still a work in progress, but the basics are up and running for you to test. It only works on master at the moment however. Repositories are:
If you don’t have a Wii Remote, you can still test out what head-tracking would be like by enabling the WiiTrack plugin and toggling ‘Track mouse cursor’.
The Wii remote plugin is also capable of reporting it’s values to other plugins. Recently, a feature has been added to the freewins plugin to allow setting of it’s values. Just set up the settings like this:
Wiimote Acc Plugin: freewins
Wiimote Acc Action: increment_rotate
I’m planning for the plugin to implement a lot more, such as gesture support, but due to time constraints and hardware constraints, I wont be able to do a lot of work on it for a while.
Other new enhancements
Colors can now be used in multi-list settings, plugins are being adapted
Info tooltip added to the filter page of CCSM
Mag now has an icon in CCSM
Improvements to Advanced Setting Search
Plugin list now has icons
Search by ‘All’ in plugins, groups and subgroups
Grab a key with the keyboard icon
‘Detect Diagonal Movements’ setting added to mousegestures
Tip of the week
Did you know that the loginout plugin is not only for log in and log out effects? If you want ot dim the entire screen on the appearance of a particular window, just append ‘| iclass=appname’ where appname is the executable name of the application, to the end of the ‘logout’ window match. This allows the effect of a dimmed out screen on appearance of gksu, gnome-keyring or any other dialog.
Thanks to this forum post, I have finally found a dock that suits my needs. It is called cairo-dock and does real parabolic zooming, much alike the OS X dock. I suggest you check it out.
Screenlet of the Week
I’ve started this section, and I don’t know what will come of it, but I want to get screenlets more involved with this blog considering they have their own place on the forum. I really like the terminal screenlet by spdf
Hope I can write the blog a little sooner next time!
(Videos coming soon, they are uploading to YouTube now =))(Except the maze game plugin, which is having problems)
– SmSpillaz :)