aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-main-window.c
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy-gtk/empathy-main-window.c')
-rw-r--r--libempathy-gtk/empathy-main-window.c40
1 files changed, 24 insertions, 16 deletions
diff --git a/libempathy-gtk/empathy-main-window.c b/libempathy-gtk/empathy-main-window.c
index 257ade9bd..f3d3a3add 100644
--- a/libempathy-gtk/empathy-main-window.c
+++ b/libempathy-gtk/empathy-main-window.c
@@ -39,6 +39,7 @@
#include "gossip-status-presets.h"
#include "gossip-geometry.h"
#include "gossip-preferences.h"
+#include "gossip-accounts-dialog.h"
#define DEBUG_DOMAIN "EmpathyMainWindow"
@@ -155,20 +156,25 @@ static void main_window_notify_compact_contact_list_cb (GossipConf
EmpathyMainWindow *window);
GtkWidget *
-empathy_main_window_new (void)
-{
- EmpathyMainWindow *window;
- GladeXML *glade;
- GossipConf *conf;
- GtkWidget *sw;
- GtkWidget *show_offline_widget;
- GtkWidget *ebox;
- GtkToolItem *item;
- gchar *str;
- gboolean show_offline;
- gboolean show_avatars;
- gboolean compact_contact_list;
- gint x, y, w, h;
+empathy_main_window_show (void)
+{
+ static EmpathyMainWindow *window = NULL;
+ GladeXML *glade;
+ GossipConf *conf;
+ GtkWidget *sw;
+ GtkWidget *show_offline_widget;
+ GtkWidget *ebox;
+ GtkToolItem *item;
+ gchar *str;
+ gboolean show_offline;
+ gboolean show_avatars;
+ gboolean compact_contact_list;
+ gint x, y, w, h;
+
+ if (window) {
+ gtk_window_present (GTK_WINDOW (window->window));
+ return window->window;
+ }
window = g_new0 (EmpathyMainWindow, 1);
@@ -332,6 +338,8 @@ empathy_main_window_new (void)
"is-compact", compact_contact_list,
NULL);
+ gtk_widget_show (window->window);
+
return window->window;
}
@@ -509,7 +517,7 @@ static void
main_window_edit_accounts_cb (GtkWidget *widget,
EmpathyMainWindow *window)
{
- //gossip_accounts_dialog_show (NULL);
+ gossip_accounts_dialog_show ();
}
static void
@@ -550,7 +558,7 @@ main_window_throbber_button_press_event_cb (GtkWidget *throbber_ebox,
return FALSE;
}
- //gossip_accounts_dialog_show (NULL);
+ gossip_accounts_dialog_show ();
return FALSE;
}