diff options
-rw-r--r-- | src/empathy-status-icon.c | 12 | ||||
-rw-r--r-- | src/empathy-status-icon.h | 3 | ||||
-rw-r--r-- | src/empathy.c | 7 |
3 files changed, 16 insertions, 6 deletions
diff --git a/src/empathy-status-icon.c b/src/empathy-status-icon.c index 2ab49a63b..c030a5887 100644 --- a/src/empathy-status-icon.c +++ b/src/empathy-status-icon.c @@ -739,7 +739,7 @@ empathy_status_icon_init (EmpathyStatusIcon *icon) } EmpathyStatusIcon * -empathy_status_icon_new (GtkWindow *window) +empathy_status_icon_new (GtkWindow *window, gboolean hide_contact_list) { EmpathyStatusIconPriv *priv; EmpathyStatusIcon *icon; @@ -756,9 +756,13 @@ empathy_status_icon_new (GtkWindow *window) G_CALLBACK (status_icon_delete_event_cb), icon); - empathy_conf_get_bool (empathy_conf_get (), - EMPATHY_PREFS_UI_MAIN_WINDOW_HIDDEN, - &should_hide); + if (!hide_contact_list) { + empathy_conf_get_bool (empathy_conf_get (), + EMPATHY_PREFS_UI_MAIN_WINDOW_HIDDEN, + &should_hide); + } else { + should_hide = TRUE; + } if (gtk_window_is_active (priv->window) == should_hide) { status_icon_set_visibility (icon, !should_hide, FALSE); diff --git a/src/empathy-status-icon.h b/src/empathy-status-icon.h index bb33b1c3b..ca21af833 100644 --- a/src/empathy-status-icon.h +++ b/src/empathy-status-icon.h @@ -46,7 +46,8 @@ struct _EmpathyStatusIconClass { }; GType empathy_status_icon_get_type (void) G_GNUC_CONST; -EmpathyStatusIcon *empathy_status_icon_new (GtkWindow *window); +EmpathyStatusIcon *empathy_status_icon_new (GtkWindow *window, + gboolean hide_contact_list); G_END_DECLS diff --git a/src/empathy.c b/src/empathy.c index d30935d24..5851d41ac 100644 --- a/src/empathy.c +++ b/src/empathy.c @@ -358,12 +358,17 @@ main (int argc, char *argv[]) EmpathyIdle *idle; gboolean autoconnect = TRUE; gboolean no_connect = FALSE; + gboolean hide_contact_list = FALSE; GError *error = NULL; GOptionEntry options[] = { { "no-connect", 'n', 0, G_OPTION_ARG_NONE, &no_connect, N_("Don't connect on startup"), NULL }, + { "hide-contact-list", 'h', + 0, G_OPTION_ARG_NONE, &hide_contact_list, + N_("Don't show the contact list on startup"), + NULL }, { NULL } }; @@ -446,7 +451,7 @@ main (int argc, char *argv[]) /* Setting up UI */ window = empathy_main_window_show (); - icon = empathy_status_icon_new (GTK_WINDOW (window)); + icon = empathy_status_icon_new (GTK_WINDOW (window), hide_contact_list); if (connection) { /* We se the callback here because we need window */ |