Show the time when we were invited on the invite page

Currently, this is something that's missing even in clients like Element
(!?!) I will sometimes miss when invites are sent - like when I'm
sleeping - and then when I start back up NeoChat I have no idea when
they tried to invite me. This can get worse on bigger timescales, like
when you go on vacation for a few days.
This commit is contained in:
Joshua Goins
2025-05-08 14:22:55 -04:00
parent d7c9bea783
commit 28c39292f7
3 changed files with 24 additions and 2 deletions

View File

@@ -192,6 +192,11 @@ class NeoChatRoom : public Quotient::Room
*/
Q_PROPERTY(ChatBarCache *threadCache READ threadCache CONSTANT)
/**
* @brief When the current user was invited to the room.
*/
Q_PROPERTY(QDateTime inviteTimestamp READ inviteTimestamp NOTIFY inviteTimestampChanged)
public:
explicit NeoChatRoom(Quotient::Connection *connection, QString roomId, Quotient::JoinState joinState = {});
@@ -525,6 +530,11 @@ public:
*/
Q_INVOKABLE QString invitingUserId() const;
/**
* If we're invited to this room, the timestamp when we were invited in. Undefined in other cases.
*/
Q_INVOKABLE QDateTime inviteTimestamp() const;
/**
* @brief Return the cached file transfer information for the event.
*
@@ -621,6 +631,7 @@ Q_SIGNALS:
void maxRoomVersionChanged();
void extraEventLoaded(const QString &eventId);
void extraEventNotFound(const QString &eventId);
void inviteTimestampChanged();
/**
* @brief Request a message be shown to the user of the given type.