diff options
Diffstat (limited to 'addressbook/gui')
-rw-r--r-- | addressbook/gui/widgets/e-minicard.c | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/addressbook/gui/widgets/e-minicard.c b/addressbook/gui/widgets/e-minicard.c index f687509a79..efd434d8e9 100644 --- a/addressbook/gui/widgets/e-minicard.c +++ b/addressbook/gui/widgets/e-minicard.c @@ -774,13 +774,25 @@ add_field (EMinicard *e_minicard, EContactField field, gdouble left_width) string = e_contact_get (e_minicard->contact, field); new_item = e_minicard_label_new(group); - gnome_canvas_item_set( new_item, - "width", e_minicard->width - 4.0, - "fieldname", name, - "field", string, - "max_field_name_length", left_width, - "editable", FALSE /* e_minicard->editable */, - NULL ); + + if (e_minicard->contact && e_contact_get (e_minicard->contact, E_CONTACT_IS_LIST)) + gnome_canvas_item_set( new_item, + "width", e_minicard->width - 4.0, + "fieldname", string, + "field", "", + "max_field_name_length", left_width, + "editable", FALSE /* e_minicard->editable */, + NULL ); + else + gnome_canvas_item_set( new_item, + "width", e_minicard->width - 4.0, + "fieldname", name, + "field", string, + "max_field_name_length", left_width, + "editable", FALSE /* e_minicard->editable */, + NULL ); + + #if notyet g_object_set(E_MINICARD_LABEL(new_item)->field, "allow_newlines", e_card_simple_get_allow_newlines (e_minicard->contact, field), @@ -837,6 +849,7 @@ remodel( EMinicard *e_minicard ) GList *list; char *file_as; int left_width = -1; + gboolean is_list = FALSE; if (e_minicard->header_text) { file_as = e_contact_get (e_minicard->contact, E_CONTACT_FILE_AS); @@ -847,6 +860,9 @@ remodel( EMinicard *e_minicard ) } if (e_minicard->contact && e_contact_get (e_minicard->contact, E_CONTACT_IS_LIST)) + is_list = TRUE; + + if (is_list) gnome_canvas_item_show (e_minicard->list_icon); else gnome_canvas_item_hide (e_minicard->list_icon); @@ -860,6 +876,9 @@ remodel( EMinicard *e_minicard ) if (field == E_CONTACT_FAMILY_NAME || field == E_CONTACT_GIVEN_NAME) continue; + if (field == E_CONTACT_FULL_NAME && is_list) + continue; + if (list) minicard_field = list->data; if (minicard_field && minicard_field->field == field) { |