GHashTable *accounts;
gpointer token;
GSList *tubes;
- EmpathyChatroomManager *chatroom_mgr;
} EmpathyDispatcherPriv;
G_DEFINE_TYPE (EmpathyDispatcher, empathy_dispatcher, G_TYPE_OBJECT);
g_object_unref (priv->account_manager);
g_object_unref (priv->mc);
+ g_hash_table_destroy (priv->accounts);
g_hash_table_destroy (priv->connections);
-
- g_object_unref (priv->chatroom_mgr);
}
static void
g_object_unref (l->data);
}
g_list_free (accounts);
-
- /* FIXME thisshould probably be created by another object.. */
- priv->chatroom_mgr = empathy_chatroom_manager_dup_singleton (NULL);
- empathy_chatroom_manager_observe (priv->chatroom_mgr, dispatcher);
}
EmpathyDispatcher *
#include <libempathy/empathy-idle.h>
#include <libempathy/empathy-utils.h>
+#include <libempathy/empathy-chatroom-manager.h>
#include <libempathy/empathy-dispatcher.h>
#include <libempathy/empathy-dispatch-operation.h>
#include <libempathy/empathy-tp-chat.h>
guint32 startup_timestamp;
EmpathyStatusIcon *icon;
EmpathyDispatcher *dispatcher;
+ EmpathyChatroomManager *chatroom_manager;
GtkWidget *window;
MissionControl *mc;
EmpathyIdle *idle;
dispatcher = empathy_dispatcher_dup_singleton ();
g_signal_connect (dispatcher, "dispatch", G_CALLBACK (dispatch_cb), NULL);
+ chatroom_manager = empathy_chatroom_manager_dup_singleton (NULL);
+ empathy_chatroom_manager_observe (chatroom_manager, dispatcher);
+
gtk_main ();
empathy_idle_set_state (idle, MC_PRESENCE_OFFLINE);
g_object_unref (idle);
g_object_unref (icon);
g_object_unref (dispatcher);
+ g_object_unref (chatroom_manager);
return EXIT_SUCCESS;
}