diff options
author | Nicolas Werner <nicolas.werner@hotmail.de> | 2023-08-10 09:04:29 +0200 |
---|---|---|
committer | Nicolas Werner <nicolas.werner@hotmail.de> | 2023-08-10 09:04:29 +0200 |
commit | 8924167a72f2cf29f2e9b49d1bb6565d4ffaf492 (patch) | |
tree | 25b3df822962e838da5b42017044c471cac05a58 /src | |
parent | Remove usage of creator (diff) | |
parent | Show an indicator in the timeline for mods and admins (diff) | |
download | nheko-8924167a72f2cf29f2e9b49d1bb6565d4ffaf492.tar.xz |
Merge remote-tracking branch 'origin/powerlevelsInTimeline'
Diffstat (limited to 'src')
-rw-r--r-- | src/timeline/TimelineModel.cpp | 9 | ||||
-rw-r--r-- | src/timeline/TimelineModel.h | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp index fddd5700..b2a036c5 100644 --- a/src/timeline/TimelineModel.cpp +++ b/src/timeline/TimelineModel.cpp @@ -535,6 +535,7 @@ TimelineModel::roleNames() const {IsSender, "isSender"}, {UserId, "userId"}, {UserName, "userName"}, + {UserPowerlevel, "userPowerlevel"}, {Day, "day"}, {Timestamp, "timestamp"}, {Url, "url"}, @@ -597,6 +598,14 @@ TimelineModel::data(const mtx::events::collections::TimelineEvents &event, int r return QVariant(QString::fromStdString(acc::sender(event))); case UserName: return QVariant(displayName(QString::fromStdString(acc::sender(event)))); + case UserPowerlevel: { + return static_cast<qlonglong>(mtx::events::state::PowerLevels{ + cache::client() + ->getStateEvent<mtx::events::state::PowerLevels>(room_id_.toStdString()) + .value_or(mtx::events::StateEvent<mtx::events::state::PowerLevels>{}) + .content} + .user_level(acc::sender(event))); + } case Day: { QDateTime prevDate = origin_server_ts(event); diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h index 64941920..fccc99eb 100644 --- a/src/timeline/TimelineModel.h +++ b/src/timeline/TimelineModel.h @@ -241,6 +241,7 @@ public: IsSender, UserId, UserName, + UserPowerlevel, Day, Timestamp, Url, |