diff options
author | dec05eba <dec05eba@protonmail.com> | 2022-11-08 19:07:13 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2022-11-08 19:07:13 +0100 |
commit | 840b87c42bb55ae6f47acc7576b3b40af4c6a68c (patch) | |
tree | d2c9f51f2ab84e88f2edcd8e3d3efcc1b4d38454 /src/QuickMedia.cpp | |
parent | c2219fdf1f741a33f415124459de69054313de57 (diff) |
Fix emoji drawn outside border when max lines set, username autocomplete caret not moving to end of text, multiple images on the same page with different sizes (downscaled)
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r-- | src/QuickMedia.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp index 1f5e775..72df6eb 100644 --- a/src/QuickMedia.cpp +++ b/src/QuickMedia.cpp @@ -6001,11 +6001,11 @@ namespace QuickMedia { if(mention.visible) { BodyItem *selected_mention_item = tabs[USERS_TAB_INDEX].body->get_selected(); if(selected_mention_item) { - std::string str_to_append = selected_mention_item->get_description(); - if(!str_to_append.empty()) - str_to_append.erase(0, 1); + std::string str_to_append = Text::to_printable_string(selected_mention_item->get_description()); str_to_append += " "; - chat_input.replace(chat_input.get_caret_index() - mention.filter.size(), mention.filter.size(), str_to_append); + const int filter_size = (int)mention.filter.size() + 1; + int start_index = chat_input.get_caret_index() - filter_size; + chat_input.replace(std::max(0, start_index), filter_size, str_to_append); mention.hide(); } return false; |