aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/empathy-status-icon.c12
-rw-r--r--src/empathy-status-icon.h3
-rw-r--r--src/empathy.c7
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 */