diff --git a/src/timeline/TimelineViewManager.cc b/src/timeline/TimelineViewManager.cc
index 7bee8869..0e2bde2e 100644
--- a/src/timeline/TimelineViewManager.cc
+++ b/src/timeline/TimelineViewManager.cc
@@ -29,6 +29,7 @@
#include "timeline/widgets/AudioItem.h"
#include "timeline/widgets/FileItem.h"
#include "timeline/widgets/ImageItem.h"
+#include "timeline/widgets/VideoItem.h"
TimelineViewManager::TimelineViewManager(QSharedPointer<MatrixClient> client, QWidget *parent)
: QStackedWidget(parent)
@@ -89,9 +90,10 @@ TimelineViewManager::queueEmoteMessage(const QString &msg)
void
TimelineViewManager::queueImageMessage(const QString &roomid,
- const QSharedPointer<QIODevice> data,
const QString &filename,
- const QString &url)
+ const QString &url,
+ const QString &mime,
+ const int64_t size)
{
if (!timelineViewExists(roomid)) {
qDebug() << "Cannot send m.image message to a non-managed view";
@@ -100,13 +102,15 @@ TimelineViewManager::queueImageMessage(const QString &roomid,
auto view = views_[roomid];
- view->addUserMessage<ImageItem, mtx::events::MessageType::Image>(url, filename, data);
+ view->addUserMessage<ImageItem, mtx::events::MessageType::Image>(url, filename, mime, size);
}
void
TimelineViewManager::queueFileMessage(const QString &roomid,
const QString &filename,
- const QString &url)
+ const QString &url,
+ const QString &mime,
+ const int64_t size)
{
if (!timelineViewExists(roomid)) {
qDebug() << "Cannot send m.file message to a non-managed view";
@@ -115,13 +119,15 @@ TimelineViewManager::queueFileMessage(const QString &roomid,
auto view = views_[roomid];
- view->addUserMessage<FileItem, mtx::events::MessageType::File>(url, filename);
+ view->addUserMessage<FileItem, mtx::events::MessageType::File>(url, filename, mime, size);
}
void
TimelineViewManager::queueAudioMessage(const QString &roomid,
const QString &filename,
- const QString &url)
+ const QString &url,
+ const QString &mime,
+ const int64_t size)
{
if (!timelineViewExists(roomid)) {
qDebug() << "Cannot send m.audio message to a non-managed view";
@@ -130,7 +136,24 @@ TimelineViewManager::queueAudioMessage(const QString &roomid,
auto view = views_[roomid];
- view->addUserMessage<AudioItem, mtx::events::MessageType::Audio>(url, filename);
+ view->addUserMessage<AudioItem, mtx::events::MessageType::Audio>(url, filename, mime, size);
+}
+
+void
+TimelineViewManager::queueVideoMessage(const QString &roomid,
+ const QString &filename,
+ const QString &url,
+ const QString &mime,
+ const int64_t size)
+{
+ if (!timelineViewExists(roomid)) {
+ qDebug() << "Cannot send m.video message to a non-managed view";
+ return;
+ }
+
+ auto view = views_[roomid];
+
+ view->addUserMessage<VideoItem, mtx::events::MessageType::Video>(url, filename, mime, size);
}
void
|