aboutsummaryrefslogtreecommitdiff
path: root/src/addressbook.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-04-26 07:34:09 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-04-26 07:34:09 +0000
commit3182d5650d74fcaed19234e4c585bf43fa0db288 (patch)
treebe6c78d16eb90edf9f378fa9bc8b71a3838ccb5e /src/addressbook.c
parent68061831c125f588689a28344fa052ac8364797b (diff)
improved address completion.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1672 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/addressbook.c')
-rw-r--r--src/addressbook.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/addressbook.c b/src/addressbook.c
index 09a89316..3894797c 100644
--- a/src/addressbook.c
+++ b/src/addressbook.c
@@ -3516,13 +3516,13 @@ gboolean addressbook_add_contact( const gchar *name, const gchar *address, const
* to be loaded.
* Return: TRUE if data loaded, FALSE if address index not loaded.
*/
-gboolean addressbook_load_completion( gint (*callBackFunc) ( const gchar *, const gchar * ) ) {
+gboolean addressbook_load_completion( gint (*callBackFunc) ( const gchar *, const gchar *, const gchar * ) ) {
/* AddressInterface *interface; */
AddressDataSource *ds;
GList *nodeIf, *nodeDS;
GList *listP, *nodeP;
GList *nodeM;
- gchar *sName, *sAddress, *sAlias, *sFriendly;
+ gchar *sName, *sAddress, *sAlias, *sNickName;
debug_print( "addressbook_load_completion\n" );
@@ -3548,25 +3548,26 @@ gboolean addressbook_load_completion( gint (*callBackFunc) ( const gchar *, cons
nodeM = person->listEMail;
/* Figure out name to use */
- sName = person->nickName;
+ sName = ADDRITEM_NAME(person);
+ sNickName = person->nickName;
if( sName == NULL || *sName == '\0' ) {
- sName = ADDRITEM_NAME(person);
+ if (sNickName)
+ sName = sNickName;
}
/* Process each E-Mail address */
while( nodeM ) {
ItemEMail *email = nodeM->data;
/* Have mail */
- sFriendly = sName;
sAddress = email->address;
if( sAddress && *sAddress != '\0' ) {
sAlias = ADDRITEM_NAME(email);
if( sAlias && *sAlias != '\0' ) {
- sFriendly = sAlias;
+ ( callBackFunc ) ( sName, sAddress, sAlias );
+ } else {
+ ( callBackFunc ) ( sName, sAddress, sNickName );
}
- ( callBackFunc ) ( sFriendly, sAddress );
}
-
nodeM = g_list_next( nodeM );
}
nodeP = g_list_next( nodeP );