aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-contact-widget.c
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy-gtk/empathy-contact-widget.c')
-rw-r--r--libempathy-gtk/empathy-contact-widget.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c
index 464364cb7..352476711 100644
--- a/libempathy-gtk/empathy-contact-widget.c
+++ b/libempathy-gtk/empathy-contact-widget.c
@@ -441,6 +441,7 @@ contact_widget_details_update_edit (EmpathyContactWidget *information)
TpContactInfoField *field = l->data;
InfoFieldData *field_data;
GtkWidget *w;
+ TpContactInfoFieldSpec *spec;
field_data = find_info_field_data (field->field_name);
if (field_data == NULL)
@@ -452,6 +453,18 @@ contact_widget_details_update_edit (EmpathyContactWidget *information)
continue;
}
+ spec = get_spec_from_list (specs, field->field_name);
+ /* We shouldn't have added the field to details_to_set if it's not
+ * supported by the CM */
+ g_assert (spec != NULL);
+
+ if (spec->flags & TP_CONTACT_INFO_FIELD_FLAG_OVERWRITTEN_BY_NICKNAME)
+ {
+ DEBUG ("Ignoring field '%s' due it to having the "
+ "Overwritten_By_Nickname flag", field->field_name);
+ continue;
+ }
+
/* Add Title */
w = gtk_label_new (_(field_data->title));
gtk_table_attach (GTK_TABLE (information->table_details),