2 files changed, 12 insertions, 0 deletions
diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp
index e3efe5ad..0edee4aa 100644
--- a/src/timeline/TimelineModel.cpp
+++ b/src/timeline/TimelineModel.cpp
@@ -832,6 +832,17 @@ TimelineModel::forwardMessage(QString eventId, QString roomId)
emit forwardToRoom(e, roomId, cache::isRoomEncrypted(room_id_.toStdString()));
}
+QString
+TimelineModel::messageContent(QString eventId)
+{
+ auto e = events.get(eventId.toStdString(), "");
+ if (!e)
+ return "";
+
+ auto content = mtx::accessors::body(*e);
+ return QString::fromStdString(content);
+}
+
void
TimelineModel::viewDecryptedRawMessage(QString id) const
{
diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h
index 3e6f6f15..c17280da 100644
--- a/src/timeline/TimelineModel.h
+++ b/src/timeline/TimelineModel.h
@@ -220,6 +220,7 @@ public:
Q_INVOKABLE void viewRawMessage(QString id) const;
Q_INVOKABLE void forwardMessage(QString eventId, QString roomId);
+ Q_INVOKABLE QString messageContent(QString eventId);
Q_INVOKABLE void viewDecryptedRawMessage(QString id) const;
Q_INVOKABLE void openUserProfile(QString userid, bool global = false);
Q_INVOKABLE void openRoomSettings();
|