aboutsummaryrefslogtreecommitdiff
path: root/events
diff options
context:
space:
mode:
Diffstat (limited to 'events')
-rw-r--r--events/eventcontent.h4
-rw-r--r--events/roommessageevent.cpp5
-rw-r--r--events/roommessageevent.h1
3 files changed, 10 insertions, 0 deletions
diff --git a/events/eventcontent.h b/events/eventcontent.h
index 4afbaff3..9d44aec0 100644
--- a/events/eventcontent.h
+++ b/events/eventcontent.h
@@ -200,6 +200,7 @@ namespace QMatrixClient
explicit TypedBase(const QJsonObject& o = {}) : Base(o) { }
virtual QMimeType type() const = 0;
virtual const FileInfo* fileInfo() const { return nullptr; }
+ virtual const Thumbnail* thumbnailInfo() const { return nullptr; }
};
/**
@@ -256,6 +257,9 @@ namespace QMatrixClient
"thumbnailMediaId", thumbnail.mediaId());
}
+ const Thumbnail* thumbnailInfo() const override
+ { return &thumbnail; }
+
public:
Thumbnail thumbnail;
diff --git a/events/roommessageevent.cpp b/events/roommessageevent.cpp
index 8c088f21..dec0ca50 100644
--- a/events/roommessageevent.cpp
+++ b/events/roommessageevent.cpp
@@ -128,6 +128,11 @@ bool RoomMessageEvent::hasFileContent() const
return content() && content()->fileInfo();
}
+bool RoomMessageEvent::hasThumbnail() const
+{
+ return content() && content()->thumbnailInfo();
+}
+
QJsonObject RoomMessageEvent::toJson() const
{
QJsonObject obj = _content ? _content->toJson() : QJsonObject();
diff --git a/events/roommessageevent.h b/events/roommessageevent.h
index 2a5eeb7e..a55564ed 100644
--- a/events/roommessageevent.h
+++ b/events/roommessageevent.h
@@ -61,6 +61,7 @@ namespace QMatrixClient
QMimeType mimeType() const;
bool hasTextContent() const;
bool hasFileContent() const;
+ bool hasThumbnail() const;
QJsonObject toJson() const;