first semi-usefull nickname completion
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
361ad048fa
commit
b7088bb4fa
|
@ -261,38 +261,51 @@ _cb_entry_key_down(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj EINA_UNU
|
|||
{
|
||||
Channel *chl;
|
||||
const char *usr, *str;
|
||||
Eina_List *l;
|
||||
Eina_Strbuf *sb;
|
||||
char *s;
|
||||
Eina_List *l, *m = NULL;
|
||||
|
||||
chl = data;
|
||||
|
||||
str = elm_entry_entry_get(chl->o_entry);
|
||||
if ((!str) || (strlen(str) < 1)) return;
|
||||
|
||||
sb = eina_strbuf_new();
|
||||
EINA_LIST_FOREACH(chl->userlist.users, l, usr)
|
||||
{
|
||||
if (_util_str_has_prefix(usr, str))
|
||||
m = eina_list_append(m, usr);
|
||||
}
|
||||
|
||||
if (eina_list_count(m) > 1)
|
||||
{
|
||||
Eina_Strbuf *sb;
|
||||
char *s;
|
||||
|
||||
sb = eina_strbuf_new();
|
||||
EINA_LIST_FOREACH(m, l, usr)
|
||||
{
|
||||
eina_strbuf_append_length(sb, usr, strlen(usr));
|
||||
eina_strbuf_append_char(sb, ' ');
|
||||
}
|
||||
}
|
||||
|
||||
if (eina_strbuf_length_get(sb) < 1)
|
||||
{
|
||||
if (eina_strbuf_length_get(sb) < 1)
|
||||
{
|
||||
eina_strbuf_free(sb);
|
||||
return;
|
||||
}
|
||||
|
||||
eina_strbuf_append_char(sb, '\r');
|
||||
eina_strbuf_append_char(sb, '\n');
|
||||
|
||||
s = eina_strbuf_string_steal(sb);
|
||||
eina_strbuf_free(sb);
|
||||
return;
|
||||
|
||||
_channel_text_append(chl, "*", s);
|
||||
}
|
||||
else
|
||||
{
|
||||
elm_entry_entry_set(chl->o_entry, eina_list_data_get(m));
|
||||
elm_entry_entry_append(chl->o_entry, ": ");
|
||||
elm_entry_cursor_end_set(chl->o_entry);
|
||||
}
|
||||
|
||||
eina_strbuf_append_char(sb, '\r');
|
||||
eina_strbuf_append_char(sb, '\n');
|
||||
|
||||
s = eina_strbuf_string_steal(sb);
|
||||
eina_strbuf_free(sb);
|
||||
|
||||
_channel_text_append(chl, "*", s);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue