From cb3c9f03e9cd3add0e3eb0c58ebc582fef8d127c Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sun, 22 Nov 2020 14:20:26 +0100 Subject: Matrix: user messages not appearing after re-entering room --- src/plugins/Matrix.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/plugins') diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp index eeef477..c54a8f6 100644 --- a/src/plugins/Matrix.cpp +++ b/src/plugins/Matrix.cpp @@ -1750,11 +1750,12 @@ namespace QuickMedia { if(!type_json.IsString()) return nullptr; + bool provisional = false; const rapidjson::Value &unsigned_json = GetMember(event_item_json, "unsigned"); if(unsigned_json.IsObject()) { const rapidjson::Value &transaction_id_json = GetMember(unsigned_json, "transaction_id"); if(transaction_id_json.IsString() && my_events_transaction_ids.find(transaction_id_json.GetString()) != my_events_transaction_ids.end()) - return nullptr; + provisional = true; } RelatedEventType related_event_type = RelatedEventType::NONE; @@ -1784,6 +1785,7 @@ namespace QuickMedia { message->related_event_id = relates_to_event_id_json.GetString(); message->related_event_type = RelatedEventType::REACTION; message->timestamp = timestamp; + message->provisional = provisional; return message; } } @@ -1802,6 +1804,7 @@ namespace QuickMedia { message->body = "Message deleted"; message->timestamp = timestamp; message->related_event_type = RelatedEventType::REDACTION; + message->provisional = provisional; const rapidjson::Value &reason_json = GetMember(*content_json, "reason"); if(reason_json.IsString()) { @@ -1892,6 +1895,7 @@ namespace QuickMedia { message->related_event_id = std::move(related_event_id); message->related_event_type = related_event_type; message->timestamp = timestamp; + message->provisional = provisional; return message; } else { auto message = std::make_shared(); @@ -1902,6 +1906,7 @@ namespace QuickMedia { message->related_event_id = std::move(related_event_id); message->related_event_type = related_event_type; message->timestamp = timestamp; + message->provisional = provisional; return message; } @@ -1975,6 +1980,7 @@ namespace QuickMedia { message->related_event_id = std::move(related_event_id); message->related_event_type = related_event_type; message->timestamp = timestamp; + message->provisional = provisional; return message; } -- cgit v1.2.3