aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Matrix.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2020-10-17 18:56:44 +0200
committerdec05eba <dec05eba@protonmail.com>2020-10-17 18:56:44 +0200
commit12cdc09759edf506fbafe051895343b20a67798c (patch)
tree43f561a78eb4869bde1638ab44288ff825265800 /src/plugins/Matrix.cpp
parent4a7b86829025664f6eeef6fcb5fc0894733f2ad6 (diff)
Matrix: make text that mentions us red
Diffstat (limited to 'src/plugins/Matrix.cpp')
-rw-r--r--src/plugins/Matrix.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp
index ea5f86c..f9bfe30 100644
--- a/src/plugins/Matrix.cpp
+++ b/src/plugins/Matrix.cpp
@@ -415,7 +415,7 @@ namespace QuickMedia {
}
// TODO: Do not show notification if mention is a reply to somebody else that replies to me? also dont show notification everytime a mention is edited
- static bool message_contains_user_mention(const std::string &msg, const std::string &username) {
+ bool message_contains_user_mention(const std::string &msg, const std::string &username) {
if(msg.empty())
return false;
@@ -447,6 +447,7 @@ namespace QuickMedia {
return;
std::vector<std::shared_ptr<Message>> new_messages;
+ auto me = get_me(room_data);
for(const rapidjson::Value &event_item_json : events_json.GetArray()) {
std::shared_ptr<Message> new_message = parse_message_event(event_item_json, room_data.get());
@@ -454,8 +455,8 @@ namespace QuickMedia {
continue;
// TODO: Is @room ok? shouldn't we also check if the user has permission to do @room? (only when notifications are limited to @mentions)
- if(has_unread_notifications && !username.empty())
- new_message->mentions_me = message_contains_user_mention(new_message->body, username) || message_contains_user_mention(new_message->body, "@room");
+ if(has_unread_notifications && me)
+ new_message->mentions_me = message_contains_user_mention(new_message->body, me->display_name) || message_contains_user_mention(new_message->body, "@room");
new_messages.push_back(std::move(new_message));
}