summary refs log tree commit diff
path: root/src/timeline
diff options
context:
space:
mode:
authorNicolas Werner <nicolas.werner@hotmail.de>2022-12-27 01:40:03 +0100
committerNicolas Werner <nicolas.werner@hotmail.de>2022-12-27 01:40:25 +0100
commitf98b289ba2f8241ebe33da3e4aac9a6e71ca5c3e (patch)
tree1ab2131f42ed214d36f345b49bdc48229d7530b5 /src/timeline
parentUpdate translations (diff)
downloadnheko-f98b289ba2f8241ebe33da3e4aac9a6e71ca5c3e.tar.xz
Show invite reason in the UI (hidden by default)
Diffstat (limited to 'src/timeline')
-rw-r--r--src/timeline/RoomlistModel.cpp14
-rw-r--r--src/timeline/RoomlistModel.h4
2 files changed, 17 insertions, 1 deletions
diff --git a/src/timeline/RoomlistModel.cpp b/src/timeline/RoomlistModel.cpp

index 82b3fc3d..827cbed1 100644 --- a/src/timeline/RoomlistModel.cpp +++ b/src/timeline/RoomlistModel.cpp
@@ -723,6 +723,13 @@ RoomlistModel::getRoomPreviewById(QString roomid) const if (invites.contains(roomid)) { i = invites.value(roomid); preview.isInvite_ = true; + + auto member = cache::client()->getInviteMember(roomid.toStdString(), + http::client()->user_id().to_string()); + + if (member) { + preview.reason_ = QString::fromStdString(member->reason); + } } else { i = previewedRooms.value(roomid); preview.isInvite_ = false; @@ -769,6 +776,13 @@ RoomlistModel::setCurrentRoom(const QString &roomid) if (invites.contains(roomid)) { i = invites.value(roomid); p.isInvite_ = true; + + auto member = cache::client()->getInviteMember(roomid.toStdString(), + http::client()->user_id().to_string()); + + if (member) { + p.reason_ = QString::fromStdString(member->reason); + } } else { i = previewedRooms.value(roomid); p.isInvite_ = false; diff --git a/src/timeline/RoomlistModel.h b/src/timeline/RoomlistModel.h
index 0eb57547..0d52102d 100644 --- a/src/timeline/RoomlistModel.h +++ b/src/timeline/RoomlistModel.h
@@ -31,6 +31,7 @@ class RoomPreview Q_PROPERTY(QString roomName READ roomName CONSTANT) Q_PROPERTY(QString roomTopic READ roomTopic CONSTANT) Q_PROPERTY(QString roomAvatarUrl READ roomAvatarUrl CONSTANT) + Q_PROPERTY(QString reason READ reason CONSTANT) Q_PROPERTY(bool isInvite READ isInvite CONSTANT) public: @@ -40,9 +41,10 @@ public: QString roomName() const { return roomName_; } QString roomTopic() const { return roomTopic_; } QString roomAvatarUrl() const { return roomAvatarUrl_; } + QString reason() const { return reason_; } bool isInvite() const { return isInvite_; } - QString roomid_, roomName_, roomAvatarUrl_, roomTopic_; + QString roomid_, roomName_, roomAvatarUrl_, roomTopic_, reason_; bool isInvite_ = false; };