[compiz] Plugin Library Interface

Danny Baumann dannybaumann at web.de
Wed Mar 7 06:37:29 PST 2007


Hi,

> What are the major pros/cons of using this method over plain old
> libraries?

They plug into the normal plugin infrastructure and don't add the need
for plugin writers to mess around with dlopen(), dlsym() and such.
Basically, they work like normal libraries and look like a plugin. A
large advantage is that every plugin gets a notify whenever a library
plugin is loaded or unloaded.

> Do you have any other library plugins other than text?  Or what do you
> plan for other types of library plugin?  It seems like only text and group
> use this at the moment.

Currently the only library plugin is text. In the future however, there
could be library plugins like "window move animation" which provides
means for the move animation currently found in scale, switcher and such
(that animation which is adjustable by speed & timestep). That way, this
animation code would only be needed once. 
Cornelius even suggested breaking animation into subplugins by using
that library plugin approach. Each separate animation would get its own
subplugin then, and animation.c would only provide the framework to glue
them together.
And in Beryl, the text plugin is not only used by group, but also by
switcher and scale. I could provide a patch which adds text display
support (on hovering) to scale, but that patch would need the text
plugin which is a bit problematic if scale is considered a core plugin
and text isn't ;-)

Regards,

Danny



More information about the compiz mailing list