aboutsummaryrefslogtreecommitdiff
path: root/lib/events/eventcontent.cpp
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2019-06-24 07:21:13 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2019-06-24 07:21:13 +0900
commit63ae79c3e2820efc2ba60d33e2caf2d7b9b3c408 (patch)
tree2552f5049a6ef7ba0034483b25ca4ab33d1fcb13 /lib/events/eventcontent.cpp
parente083d327e6f6581210f8d077d8bbe1151e81e82c (diff)
parent93f0c8fe89f448d1d58caa757573f17102369471 (diff)
downloadlibquotient-63ae79c3e2820efc2ba60d33e2caf2d7b9b3c408.tar.gz
libquotient-63ae79c3e2820efc2ba60d33e2caf2d7b9b3c408.zip
Merge branch 'master' into clang-format
# Conflicts: # CMakeLists.txt # lib/avatar.cpp # lib/connection.cpp # lib/connection.h # lib/connectiondata.cpp # lib/csapi/account-data.cpp # lib/csapi/account-data.h # lib/csapi/capabilities.cpp # lib/csapi/capabilities.h # lib/csapi/content-repo.cpp # lib/csapi/create_room.cpp # lib/csapi/filter.cpp # lib/csapi/joining.cpp # lib/csapi/keys.cpp # lib/csapi/list_joined_rooms.cpp # lib/csapi/notifications.cpp # lib/csapi/openid.cpp # lib/csapi/presence.cpp # lib/csapi/pushrules.cpp # lib/csapi/registration.cpp # lib/csapi/room_upgrades.cpp # lib/csapi/room_upgrades.h # lib/csapi/search.cpp # lib/csapi/users.cpp # lib/csapi/versions.cpp # lib/csapi/whoami.cpp # lib/csapi/{{base}}.cpp.mustache # lib/events/accountdataevents.h # lib/events/eventcontent.h # lib/events/roommemberevent.cpp # lib/events/stateevent.cpp # lib/jobs/basejob.cpp # lib/jobs/basejob.h # lib/networkaccessmanager.cpp # lib/networksettings.cpp # lib/room.cpp # lib/room.h # lib/settings.cpp # lib/settings.h # lib/syncdata.cpp # lib/user.cpp # lib/user.h # lib/util.cpp
Diffstat (limited to 'lib/events/eventcontent.cpp')
-rw-r--r--lib/events/eventcontent.cpp45
1 files changed, 24 insertions, 21 deletions
diff --git a/lib/events/eventcontent.cpp b/lib/events/eventcontent.cpp
index cc31fea5..2b84c2b7 100644
--- a/lib/events/eventcontent.cpp
+++ b/lib/events/eventcontent.cpp
@@ -34,26 +34,31 @@ QJsonObject Base::toJson() const
FileInfo::FileInfo(const QUrl& u, qint64 payloadSize, const QMimeType& mimeType,
const QString& originalFilename)
- : mimeType(mimeType),
- url(u),
- payloadSize(payloadSize),
- originalName(originalFilename)
-{
-}
+ : mimeType(mimeType)
+ , url(u)
+ , payloadSize(payloadSize)
+ , originalName(originalFilename)
+{}
FileInfo::FileInfo(const QUrl& u, const QJsonObject& infoJson,
const QString& originalFilename)
- : originalInfoJson(infoJson),
- mimeType(QMimeDatabase().mimeTypeForName(
- infoJson["mimetype"_ls].toString())),
- url(u),
- payloadSize(fromJson<qint64>(infoJson["size"_ls])),
- originalName(originalFilename)
+ : originalInfoJson(infoJson)
+ , mimeType(
+ QMimeDatabase().mimeTypeForName(infoJson["mimetype"_ls].toString()))
+ , url(u)
+ , payloadSize(fromJson<qint64>(infoJson["size"_ls]))
+ , originalName(originalFilename)
{
if (!mimeType.isValid())
mimeType = QMimeDatabase().mimeTypeForData(QByteArray());
}
+bool FileInfo::isValid() const
+{
+ return url.scheme() == "mxc"
+ && (url.authority() + url.path()).count('/') == 1;
+}
+
void FileInfo::fillInfoJson(QJsonObject* infoJson) const
{
Q_ASSERT(infoJson);
@@ -65,16 +70,15 @@ void FileInfo::fillInfoJson(QJsonObject* infoJson) const
ImageInfo::ImageInfo(const QUrl& u, qint64 fileSize, QMimeType mimeType,
const QSize& imageSize, const QString& originalFilename)
- : FileInfo(u, fileSize, mimeType, originalFilename), imageSize(imageSize)
-{
-}
+ : FileInfo(u, fileSize, mimeType, originalFilename)
+ , imageSize(imageSize)
+{}
ImageInfo::ImageInfo(const QUrl& u, const QJsonObject& infoJson,
const QString& originalFilename)
- : FileInfo(u, infoJson, originalFilename),
- imageSize(infoJson["w"_ls].toInt(), infoJson["h"_ls].toInt())
-{
-}
+ : FileInfo(u, infoJson, originalFilename)
+ , imageSize(infoJson["w"_ls].toInt(), infoJson["h"_ls].toInt())
+{}
void ImageInfo::fillInfoJson(QJsonObject* infoJson) const
{
@@ -88,8 +92,7 @@ void ImageInfo::fillInfoJson(QJsonObject* infoJson) const
Thumbnail::Thumbnail(const QJsonObject& infoJson)
: ImageInfo(infoJson["thumbnail_url"_ls].toString(),
infoJson["thumbnail_info"_ls].toObject())
-{
-}
+{}
void Thumbnail::fillInfoJson(QJsonObject* infoJson) const
{