# HG changeset patch # User Richard Nelson # Date 1174348170 0 # Node ID e74c2488448ba40b6bbcd39492514aeb7b6319d0 # Parent 2b41d9a2876e5d12c5f757ec4743c4330c781b66 Group autocomplete for buddy adding diff -r 2b41d9a2876e -r e74c2488448b finch/gntblist.c --- a/finch/gntblist.c Mon Mar 19 19:06:57 2007 +0000 +++ b/finch/gntblist.c Mon Mar 19 23:49:30 2007 +0000 @@ -304,6 +304,7 @@ field = purple_request_field_string_new("group", _("Group"), grp, FALSE); purple_request_field_group_add_field(group, field); + purple_request_field_set_type_hint(field, "group"); field = purple_request_field_account_new("account", _("Account"), NULL); purple_request_field_account_set_show_all(field, FALSE); diff -r 2b41d9a2876e -r e74c2488448b finch/gntrequest.c --- a/finch/gntrequest.c Mon Mar 19 19:06:57 2007 +0000 +++ b/finch/gntrequest.c Mon Mar 19 23:49:30 2007 +0000 @@ -398,6 +398,12 @@ gnt_entry_add_suggest(GNT_ENTRY(entry), purple_buddy_get_name((PurpleBuddy*)node)); } gnt_entry_set_always_suggest(GNT_ENTRY(entry), TRUE); + } else if (hint && !strcmp(hint, "group")) { + PurpleBlistNode *node; + for (node = purple_blist_get_root(); node; node = node->next) { + if (PURPLE_BLIST_NODE_IS_GROUP(node)) + gnt_entry_add_suggest(GNT_ENTRY(entry), ((PurpleGroup *)node)->name); + } } gnt_box_add_widget(GNT_BOX(hbox), entry); field->ui_data = entry;