From fdb76bb5c1bdce765479442a70ddca80b867caa6 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Wed, 29 Nov 2017 23:39:35 +0200 Subject: Implement file uploads fixes #24 --- src/FileItem.cc | 47 ++++++++++++++++++----------------------------- 1 file changed, 18 insertions(+), 29 deletions(-) (limited to 'src/FileItem.cc') diff --git a/src/FileItem.cc b/src/FileItem.cc index cd934783..96fd9c07 100644 --- a/src/FileItem.cc +++ b/src/FileItem.cc @@ -30,25 +30,16 @@ namespace events = matrix::events; namespace msgs = matrix::events::messages; -FileItem::FileItem(QSharedPointer client, - const events::MessageEvent &event, - QWidget *parent) - : QWidget(parent) - , event_{event} - , client_{client} +void +FileItem::init() { setMouseTracking(true); setCursor(Qt::PointingHandCursor); setAttribute(Qt::WA_Hover, true); - url_ = event.msgContent().url(); - text_ = event.content().body(); - readableFileSize_ = calculateFileSize(event.msgContent().info().size); - icon_.addFile(":/icons/icons/ui/arrow-pointing-down.png"); QList url_parts = url_.toString().split("mxc://"); - if (url_parts.size() != 2) { qDebug() << "Invalid format for image" << url_.toString(); return; @@ -61,6 +52,20 @@ FileItem::FileItem(QSharedPointer client, connect(client_.data(), &MatrixClient::fileDownloaded, this, &FileItem::fileDownloaded); } +FileItem::FileItem(QSharedPointer client, + const events::MessageEvent &event, + QWidget *parent) + : QWidget(parent) + , url_{event.msgContent().url()} + , text_{event.content().body()} + , event_{event} + , client_{client} +{ + readableFileSize_ = calculateFileSize(event.msgContent().info().size); + + init(); +} + FileItem::FileItem(QSharedPointer client, const QString &url, const QString &filename, @@ -70,25 +75,9 @@ FileItem::FileItem(QSharedPointer client, , text_{QFileInfo(filename).fileName()} , client_{client} { - setMouseTracking(true); - setCursor(Qt::PointingHandCursor); - setAttribute(Qt::WA_Hover, true); - - // TODO: calculateFileSize - /* readableFileSize_ = calculateFileSize(event.msgContent().info().size); */ - - QList url_parts = url_.toString().split("mxc://"); - - icon_.addFile(":/icons/icons/ui/arrow-pointing-down.png"); + readableFileSize_ = calculateFileSize(QFileInfo(filename).size()); - if (url_parts.size() != 2) { - qDebug() << "Invalid format for image" << url_.toString(); - return; - } - - QString media_params = url_parts[1]; - url_ = QString("%1/_matrix/media/r0/download/%2") - .arg(client_.data()->getHomeServer().toString(), media_params); + init(); } QString -- cgit 1.5.1