summary refs log tree commit diff
path: root/src/timeline
diff options
context:
space:
mode:
authorLoren Burkholder <computersemiexpert@outlook.com>2023-03-06 19:21:23 -0500
committerLoren Burkholder <computersemiexpert@outlook.com>2023-04-08 18:59:17 -0400
commit0096226aebc6f3ab0ec122e92dab40be5a863ec9 (patch)
tree6b761d478291e949a99909b9d84fde087d21fa2d /src/timeline
parentTranslated using Weblate (German) (diff)
downloadnheko-0096226aebc6f3ab0ec122e92dab40be5a863ec9.tar.xz
Implement unknown msgtype functionality
Diffstat (limited to 'src/timeline')
-rw-r--r--src/timeline/TimelineModel.cpp17
-rw-r--r--src/timeline/TimelineModel.h3
2 files changed, 16 insertions, 4 deletions
diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp

index cb9fb7fa..ae6ecc9a 100644 --- a/src/timeline/TimelineModel.cpp +++ b/src/timeline/TimelineModel.cpp
@@ -84,6 +84,11 @@ struct RoomEventType return qml_mtx_events::EventType::TextMessage; } constexpr qml_mtx_events::EventType + operator()(const mtx::events::Event<mtx::events::msg::Unknown> &) + { + return qml_mtx_events::EventType::UnknownMessage; + } + constexpr qml_mtx_events::EventType operator()(const mtx::events::Event<mtx::events::msg::Video> &) { return qml_mtx_events::EventType::VideoMessage; @@ -203,7 +208,7 @@ qml_mtx_events::toRoomEventType(mtx::events::EventType e) case EventType::RoomMember: return qml_mtx_events::EventType::Member; case EventType::RoomMessage: - return qml_mtx_events::EventType::UnknownMessage; + return qml_mtx_events::EventType::UnknownEvent; case EventType::RoomName: return qml_mtx_events::EventType::Name; case EventType::RoomPowerLevels: @@ -239,7 +244,7 @@ qml_mtx_events::toRoomEventType(mtx::events::EventType e) case EventType::Unsupported: return qml_mtx_events::EventType::Unsupported; default: - return qml_mtx_events::EventType::UnknownMessage; + return qml_mtx_events::EventType::UnknownEvent; } } @@ -369,9 +374,10 @@ qml_mtx_events::fromRoomEventType(qml_mtx_events::EventType t) case qml_mtx_events::LocationMessage: case qml_mtx_events::NoticeMessage: case qml_mtx_events::TextMessage: + case qml_mtx_events::UnknownMessage: case qml_mtx_events::VideoMessage: case qml_mtx_events::Redacted: - case qml_mtx_events::UnknownMessage: + case qml_mtx_events::UnknownEvent: case qml_mtx_events::KeyVerificationRequest: case qml_mtx_events::KeyVerificationStart: case qml_mtx_events::KeyVerificationMac: @@ -1077,6 +1083,11 @@ TimelineModel::addEvents(const mtx::responses::Timeline &timeline) std::get<RoomEvent<mtx::events::msg::Text>>(e).content.body); msg.contains("🎉") || msg.contains("🎊")) needsSpecialEffects_ = true; + } else if (std::holds_alternative<RoomEvent<mtx::events::msg::Unknown>>(e)) { + if (auto msg = QString::fromStdString( + std::get<RoomEvent<mtx::events::msg::Unknown>>(e).content.body); + msg.contains("🎉") || msg.contains("🎊")) + needsSpecialEffects_ = true; } else if (std::holds_alternative<RoomEvent<mtx::events::msg::Confetti>>(e)) needsSpecialEffects_ = true; } diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h
index 03cb9ecb..d71012c1 100644 --- a/src/timeline/TimelineModel.h +++ b/src/timeline/TimelineModel.h
@@ -106,9 +106,10 @@ enum EventType LocationMessage, NoticeMessage, TextMessage, + UnknownMessage, VideoMessage, Redacted, - UnknownMessage, + UnknownEvent, KeyVerificationRequest, KeyVerificationStart, KeyVerificationMac,