Compiz-Fusion Squeeze Plugin

I created the Squeeze plugin for Compiz-Fusion whilst working for eyemagnet Ltd. The plugin extends the Compiz-Fusion compositing window manager for the X Window System, by allowing windows to animate to a particular size and position. The plugin was developed to extend the functionality eyemagnet’s digital signage linux based platform.

The video above is a quick demonstration of the Squeeze animation being applied to a video during playback.

In this video I am demonstrating the client program I made for the Squeeze plugin. Given an window title it will move and resize that window with a “squeeze” animation.

Along with the plugin itself I also created a command line application called the Squeeze Plugin Client. The squeeze client will identify a program based on the window title, and then tell the Squeeze plugin to move and resize the window to the parameters specified by using the D-Bus communication system.

Another one of the goals for this project was to create a set of python-bindings easily modifyable by changing an xml file to call Compiz actions via  the D-Bus system. This program allow python applications to more easily script to Compiz. The source code for this particular plugin can be found here. Between the options provided through the use of the Squeeze Plugin Client and the python bindings, we created the tools to easily control the windows being presented using Compiz, with everything from various graphical effects to window positioning and layering.

As Compiz is a open source project all the code produced for this plugin was comitted to the Compiz-Fusion main repository which can be browsed online. As such it is one of the few projects I have worked on where I actually get to show off the source code behind the product I have produced. The source code for this plugin can be found here.

All the code I have contributed to Compiz whilst working for eyemagnet Ltd can be found in the Compiz Git Repository.