From: Xavier Claessens Date: Wed, 2 May 2007 06:13:46 +0000 (+0000) Subject: [darcs-to-svn @ contact list now displays accounts dialog] X-Git-Url: https://git.0d.be/?p=empathy.git;a=commitdiff_plain;h=8a9cd5deb874be70481ac0193cf7c28933f4b9ce [darcs-to-svn @ contact list now displays accounts dialog] svn path=/trunk/; revision=21 --- diff --git a/README b/README index db1535d0..ab94d8f1 100644 --- a/README +++ b/README @@ -4,15 +4,12 @@ How to use empathy ? $ ./autogen $ make && make install -2) Setup and enable some accounts -$ empathy-accounts - -3) Start the MC +2) Start the MC $ empathy-launcher This will start MC and connect all enabled accounts. If you start a private chat or someone is saying something to you, empathy-chat will be started automagicaly and display a chat UI for your conversation. -4) To see the contact list +3) To see the contact list and setting accounts $ empathy-contact-list diff --git a/accounts/empathy-accounts-main.c b/accounts/empathy-accounts-main.c index 10b85a22..e6562034 100644 --- a/accounts/empathy-accounts-main.c +++ b/accounts/empathy-accounts-main.c @@ -48,7 +48,6 @@ main (int argc, char *argv[]) dialog = gossip_accounts_dialog_show (); - gtk_widget_show (dialog); g_signal_connect (dialog, "destroy", G_CALLBACK (destroy_cb), NULL); diff --git a/contact-list/empathy-contact-list-main.c b/contact-list/empathy-contact-list-main.c index dfa7695e..b43b1c20 100644 --- a/contact-list/empathy-contact-list-main.c +++ b/contact-list/empathy-contact-list-main.c @@ -27,9 +27,12 @@ #include #include +#include + #include #include #include +#include static void destroy_cb (GtkWidget *window, @@ -44,17 +47,24 @@ int main (int argc, char *argv[]) { GtkWidget *window; + GList *accounts; gtk_init (&argc, &argv); - window = empathy_main_window_new (); + window = empathy_main_window_show (); gossip_stock_init (window); g_signal_connect (window, "destroy", G_CALLBACK (destroy_cb), NULL); - gtk_widget_show (window); + /* Show the accounts dialog if there is no enabled accounts */ + accounts = mc_accounts_list_by_enabled (TRUE); + if (accounts) { + mc_accounts_list_free (accounts); + } else { + gossip_accounts_dialog_show (); + } gtk_main (); diff --git a/libempathy-gtk/empathy-main-window.c b/libempathy-gtk/empathy-main-window.c index 257ade9b..f3d3a3ad 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; } diff --git a/libempathy-gtk/empathy-main-window.h b/libempathy-gtk/empathy-main-window.h index 91d2df20..eca78da1 100644 --- a/libempathy-gtk/empathy-main-window.h +++ b/libempathy-gtk/empathy-main-window.h @@ -27,7 +27,7 @@ G_BEGIN_DECLS -GtkWidget *empathy_main_window_new (void); +GtkWidget *empathy_main_window_show (void); G_END_DECLS