Mercurial > pidgin.yaz
changeset 15827:f59cfcce68a8
Add auto-complete support in request-entries that have 'screenname' hint set. This can be useful in, for example, 'send im' dialog etc.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Mon, 19 Mar 2007 06:34:51 +0000 |
parents | aabeea8c6c40 |
children | eec0d0202ffd |
files | finch/gntrequest.c |
diffstat | 1 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/finch/gntrequest.c Mon Mar 19 00:20:29 2007 +0000 +++ b/finch/gntrequest.c Mon Mar 19 06:34:51 2007 +0000 @@ -384,10 +384,21 @@ } else if (type == GAIM_REQUEST_FIELD_STRING) { + const char *hint = gaim_request_field_get_type_hint(field); GntWidget *entry = gnt_entry_new( gaim_request_field_string_get_default_value(field)); gnt_entry_set_masked(GNT_ENTRY(entry), gaim_request_field_string_is_masked(field)); + if (gaim_str_has_prefix(hint, "screenname")) { + GaimBlistNode *node = gaim_blist_get_root(); + gboolean offline = gaim_str_has_suffix(hint, "all"); + for (; node; node = gaim_blist_node_next(node, offline)) { + if (!GAIM_BLIST_NODE_IS_BUDDY(node)) + continue; + gnt_entry_add_suggest(GNT_ENTRY(entry), gaim_buddy_get_name((GaimBuddy*)node)); + } + gnt_entry_set_always_suggest(GNT_ENTRY(entry), TRUE); + } gnt_box_add_widget(GNT_BOX(hbox), entry); field->ui_data = entry; }