void HandleDestroyed(object sender, EventArgs e) { toplevels.Remove(sender as Gtk.Window); if (toplevels.Count == 0) { Log.Information("Exiting..."); Banshee.Kernel.Scheduler.Dispose(); Database.Dispose(); ImageLoaderThread.CleanAll(); Gtk.Application.Quit(); } if (organizer != null && organizer.Window == sender) { organizer = null; } }