* Authors: Xavier Claessens <xclaesse@gmail.com>
*/
-#include <config.h>
+#include "config.h"
-#include <string.h>
+#include "libempathy/empathy-gsettings.h"
+#include "libempathy/empathy-utils.h"
-#include <glib.h>
+#include "libempathy-gtk/empathy-presence-chooser.h"
+#include "libempathy-gtk/empathy-ui-utils.h"
+#include "libempathy-gtk/empathy-new-message-dialog.h"
+#include "libempathy-gtk/empathy-new-call-dialog.h"
-#include <gtk/gtk.h>
-#include <gdk/gdkkeysyms.h>
-#include <glib/gi18n.h>
-
-#include <telepathy-glib/account-manager.h>
-#include <telepathy-glib/util.h>
-
-#include <libempathy/empathy-gsettings.h>
-#include <libempathy/empathy-utils.h>
-
-#include <libempathy-gtk/empathy-presence-chooser.h>
-#include <libempathy-gtk/empathy-ui-utils.h>
-#include <libempathy-gtk/empathy-images.h>
-#include <libempathy-gtk/empathy-new-message-dialog.h>
-#include <libempathy-gtk/empathy-new-call-dialog.h>
-
-#include "empathy-accounts-dialog.h"
#include "empathy-status-icon.h"
-#include "empathy-preferences.h"
#include "empathy-event-manager.h"
#define DEBUG_FLAG EMPATHY_DEBUG_DISPATCHER
-#include <libempathy/empathy-debug.h>
+#include "libempathy/empathy-debug.h"
/* Number of ms to wait when blinking */
#define BLINK_TIMEOUT 500
status_icon_quit_cb (GtkAction *action,
EmpathyStatusIcon *icon)
{
- gtk_main_quit ();
+ EmpathyStatusIconPriv *priv = GET_PRIV (icon);
+
+ gtk_widget_destroy (priv->window);
}
static void
EmpathyStatusIcon *icon = user_data;
GError *error = NULL;
- if (!tp_account_manager_prepare_finish (account_manager, result, &error)) {
+ if (!tp_proxy_prepare_finish (account_manager, result, &error)) {
DEBUG ("Failed to prepare account manager: %s", error->message);
g_error_free (error);
return;
}
- list = tp_account_manager_get_valid_accounts (account_manager);
+ list = tp_account_manager_dup_valid_accounts (account_manager);
for (l = list; l != NULL; l = l->next) {
tp_g_signal_connect_object (l->data, "status-changed",
G_CALLBACK (status_icon_status_changed_cb),
icon, 0);
}
- g_list_free (list);
+ g_list_free_full (list, g_object_unref);
status_icon_presence_changed_cb (icon);
}
priv->account_manager = tp_account_manager_dup ();
priv->event_manager = empathy_event_manager_dup_singleton ();
- tp_account_manager_prepare_async (priv->account_manager, NULL,
+ tp_proxy_prepare_async (priv->account_manager, NULL,
account_manager_prepared_cb, icon);
/* make icon listen and respond to MAIN_WINDOW_HIDDEN changes */