From ede1523b824fef2f72b8d60f4efdf78a4fc4a768 Mon Sep 17 00:00:00 2001 From: Guillaume Desmottes Date: Wed, 14 Mar 2012 10:56:49 +0100 Subject: [PATCH] Don't display parameters if Parameters_Exact is not Set There is no point cluttering the UI with it as we don't allow user to choose which param he wants to set. https://bugzilla.gnome.org/show_bug.cgi?id=671983 --- libempathy-gtk/empathy-contact-widget.c | 8 ++++++-- libempathy-gtk/empathy-contactinfo-utils.c | 8 ++++++-- libempathy-gtk/empathy-contactinfo-utils.h | 3 ++- libempathy-gtk/empathy-individual-widget.c | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c index 1b04fb75..edeec31f 100644 --- a/libempathy-gtk/empathy-contact-widget.c +++ b/libempathy-gtk/empathy-contact-widget.c @@ -409,10 +409,14 @@ contact_widget_details_update_edit (EmpathyContactWidget *information) /* Add Title */ title = empathy_contact_info_field_label (field->field_name, - field->parameters); + field->parameters, + (spec->flags & TP_CONTACT_INFO_FIELD_FLAG_PARAMETERS_EXACT)); w = gtk_label_new (title); g_free (title); + /* TODO: if TP_CONTACT_INFO_FIELD_FLAG_PARAMETERS_EXACT is not set we + * should allow user to tag the vCard fields (bgo#672034) */ + gtk_grid_attach (GTK_GRID (information->grid_details), w, 0, n_rows, 1, 1); @@ -529,7 +533,7 @@ contact_widget_details_update_show (EmpathyContactWidget *information) /* Add Title */ title = empathy_contact_info_field_label (field->field_name, - field->parameters); + field->parameters, TRUE); title_widget = gtk_label_new (title); g_free (title); diff --git a/libempathy-gtk/empathy-contactinfo-utils.c b/libempathy-gtk/empathy-contactinfo-utils.c index b995297b..27056672 100644 --- a/libempathy-gtk/empathy-contactinfo-utils.c +++ b/libempathy-gtk/empathy-contactinfo-utils.c @@ -213,15 +213,19 @@ build_parameters_string (GStrv parameters) char * empathy_contact_info_field_label (const char *field_name, - GStrv parameters) + GStrv parameters, + gboolean show_parameters) { char *ret; const char *title; - char *join = build_parameters_string (parameters); + char *join = NULL; if (!empathy_contact_info_lookup_field (field_name, &title, NULL)) return NULL; + if (show_parameters) + join = build_parameters_string (parameters); + if (join != NULL) ret = g_strdup_printf ("%s (%s):", title, join); else diff --git a/libempathy-gtk/empathy-contactinfo-utils.h b/libempathy-gtk/empathy-contactinfo-utils.h index a49e807a..b91f419c 100644 --- a/libempathy-gtk/empathy-contactinfo-utils.h +++ b/libempathy-gtk/empathy-contactinfo-utils.h @@ -34,7 +34,8 @@ const char **empathy_contact_info_get_field_names (guint *nnames); gboolean empathy_contact_info_lookup_field (const gchar *field_name, const gchar **title, EmpathyContactInfoFormatFunc *linkify); char *empathy_contact_info_field_label (const char *field_name, - GStrv parameters); + GStrv parameters, + gboolean show_parameters); gint empathy_contact_info_field_cmp (TpContactInfoField *field1, TpContactInfoField *field2); diff --git a/libempathy-gtk/empathy-individual-widget.c b/libempathy-gtk/empathy-individual-widget.c index 3cbd1d5e..e103eff6 100644 --- a/libempathy-gtk/empathy-individual-widget.c +++ b/libempathy-gtk/empathy-individual-widget.c @@ -267,7 +267,7 @@ details_update_show (EmpathyIndividualWidget *self, /* Add Title */ title = empathy_contact_info_field_label (field->field_name, - field->parameters); + field->parameters, TRUE); title_widget = gtk_label_new (title); /* Add Value */ -- 2.39.2