aboutsummaryrefslogtreecommitdiff
path: root/src/QuickMedia.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r--src/QuickMedia.cpp14
1 files changed, 2 insertions, 12 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 0f4c695..0b91876 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -3431,15 +3431,6 @@ namespace QuickMedia {
};
std::thread post_thread(post_thread_handler);
- auto filter_my_messages = [&me](Messages &messages) {
- for(auto it = messages.begin(); it != messages.end();) {
- if((*it)->user == me && ((*it)->type == MessageType::TEXT || (*it)->type == MessageType::REACTION))
- it = messages.erase(it);
- else
- ++it;
- }
- };
-
auto filter_sent_messages = [&sent_messages](Messages &messages) {
for(auto it = messages.begin(); it != messages.end();) {
if(sent_messages.find((*it)->event_id) != sent_messages.end())
@@ -3861,13 +3852,13 @@ namespace QuickMedia {
}
};
- auto add_new_messages_to_current_room = [&me, &tabs, &selected_tab, &current_room](Messages &messages) {
+ auto add_new_messages_to_current_room = [&me, &tabs, &selected_tab, &current_room, &chat_state](Messages &messages) {
if(messages.empty())
return;
int num_items = tabs[MESSAGES_TAB_INDEX].body->items.size();
bool scroll_to_end = num_items == 0;
- if(tabs[MESSAGES_TAB_INDEX].body->is_selected_item_last_visible_item() && selected_tab == MESSAGES_TAB_INDEX)
+ if(tabs[MESSAGES_TAB_INDEX].body->is_selected_item_last_visible_item() && selected_tab == MESSAGES_TAB_INDEX && chat_state != ChatState::TYPING_MESSAGE)
scroll_to_end = true;
BodyItem *selected_item = tabs[MESSAGES_TAB_INDEX].body->get_selected();
@@ -4456,7 +4447,6 @@ namespace QuickMedia {
matrix->get_room_sync_data(current_room, sync_data);
if(!sync_data.messages.empty()) {
all_messages.insert(all_messages.end(), sync_data.messages.begin(), sync_data.messages.end());
- filter_my_messages(sync_data.messages);
filter_existing_messages(sync_data.messages);
}
add_new_messages_to_current_room(sync_data.messages);