linuxmint/Cinnamon — pull request #1476 by Lusito (2012-12-08 05:36:54+00:00)
Title: Revamp of appletManager & extensionSystem

Support for unloading and reloading applets and extensions.
Support for applets in looking glass.
Support for multiple instances of the same Applet.
Separator applet supplied as the most basic sample.
Gschema needs to be recompiled.
Old applets except for one (Extension manager applet) should still be compatible.

During code cleanup a lot of possible issues with the old code have been fixed.
When applets or extensions get disabled, they get unloaded as well.
So toggling them in the applet settings panel actually reloads the code.
Applets & extensions that don't clean up after themselves might be plagued by zombies.
We should ask developers to revisit their code and make sure that monitors and signal connections are properly disconnected.

My tests so far are without problems, but it'd be best if someone else could test this as well.