improve qml binding for more element of OCC::Activity

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
This commit is contained in:
Matthieu Gallien 2023-02-13 22:03:25 +01:00
parent 10f9ef5cd5
commit ce69856bfa
No known key found for this signature in database
GPG key ID: 7D0F74F05C22F553

View file

@ -80,6 +80,36 @@ public:
QString _filename;
};
struct RichSubjectParameter {
Q_GADGET
Q_PROPERTY(QString type MEMBER type)
Q_PROPERTY(QString id MEMBER id)
Q_PROPERTY(QString name MEMBER name)
Q_PROPERTY(QString path MEMBER path)
Q_PROPERTY(QUrl link MEMBER link)
public:
QString type; // Required
QString id; // Required
QString name; // Required
QString path; // Required (for files only)
QUrl link; // Optional (files only)
};
struct TalkNotificationData {
Q_GADGET
Q_PROPERTY(QString conversationToken MEMBER conversationToken)
Q_PROPERTY(QString messageId MEMBER messageId)
Q_PROPERTY(QString messageSent MEMBER messageSent)
Q_PROPERTY(QString userAvatar MEMBER userAvatar)
public:
QString conversationToken;
QString messageId;
QString messageSent;
QString userAvatar;
};
/* ==================================================================== */
/**
* @brief Activity Structure
@ -87,9 +117,10 @@ public:
*
* contains all the information describing a single activity.
*/
class Activity
{
Q_GADGET
public:
using Identifier = QPair<qlonglong, QString>;
@ -103,25 +134,15 @@ public:
DummyMoreActivitiesAvailableType,
};
Q_ENUM(Type)
static Activity fromActivityJson(const QJsonObject &json, const AccountPtr account);
static QString relativeServerFileTypeIconPath(const QMimeType &mimeType);
static QString localFilePathForActivity(const Activity &activity, const AccountPtr account);
struct RichSubjectParameter {
QString type; // Required
QString id; // Required
QString name; // Required
QString path; // Required (for files only)
QUrl link; // Optional (files only)
};
struct TalkNotificationData {
QString conversationToken;
QString messageId;
QString messageSent;
QString userAvatar;
};
using RichSubjectParameter = OCC::RichSubjectParameter;
using TalkNotificationData = OCC::TalkNotificationData;
Type _type;
qlonglong _id = 0LL;