diff options
author | MarcoPolo-PasTonMolo <marcopolopastonmolo@protonmail.com> | 2023-02-13 23:40:58 +0200 |
---|---|---|
committer | MarcoPolo-PasTonMolo <marcopolopastonmolo@protonmail.com> | 2023-02-13 23:40:58 +0200 |
commit | 6d266984a4729f09eda42027d6781d26eb198d25 (patch) | |
tree | 45b06a90450a21c31d0d28856b44ee3409070fd8 /src/ui/window_list.c | |
parent | 11055715845d7d7e5d3ef42982d04d1b65d57ac2 (diff) | |
download | profani-tty-6d266984a4729f09eda42027d6781d26eb198d25.tar.gz |
Fix quote and url autocompletion for MAM and history
After adding MAM quote and url autocompletion wouldn't pick up messages from MAM or history(from DB) or would have them in the wrong order. This commit fixes that. Fixes https://github.com/profanity-im/profanity/issues/1770
Diffstat (limited to 'src/ui/window_list.c')
-rw-r--r-- | src/ui/window_list.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/ui/window_list.c b/src/ui/window_list.c index 19baa3a1..0a96b461 100644 --- a/src/ui/window_list.c +++ b/src/ui/window_list.c @@ -1315,7 +1315,7 @@ wins_get_next_attention(void) } void -wins_add_urls_ac(const ProfWin* const win, const ProfMessage* const message) +wins_add_urls_ac(const ProfWin* const win, const ProfMessage* const message, const gboolean flip) { GRegex* regex; GMatchInfo* match_info; @@ -1326,7 +1326,11 @@ wins_add_urls_ac(const ProfWin* const win, const ProfMessage* const message) while (g_match_info_matches(match_info)) { gchar* word = g_match_info_fetch(match_info, 0); - autocomplete_add_reverse(win->urls_ac, word); + if (flip) { + autocomplete_add_unsorted(win->urls_ac, word, FALSE); + } else { + autocomplete_add_unsorted(win->urls_ac, word, TRUE); + } // for people who run profanity a long time, we don't want to waste a lot of memory autocomplete_remove_older_than_max_reverse(win->urls_ac, 20); @@ -1339,9 +1343,14 @@ wins_add_urls_ac(const ProfWin* const win, const ProfMessage* const message) } void -wins_add_quotes_ac(const ProfWin* const win, const char* const message) +wins_add_quotes_ac(const ProfWin* const win, const char* const message, const gboolean flip) { - autocomplete_add_reverse(win->quotes_ac, message); + if (flip) { + autocomplete_add_unsorted(win->quotes_ac, message, FALSE); + } else { + autocomplete_add_unsorted(win->quotes_ac, message, TRUE); + } + // for people who run profanity a long time, we don't want to waste a lot of memory autocomplete_remove_older_than_max_reverse(win->quotes_ac, 20); } |