Hidden events: Make reusable read function
2 files changed, 16 insertions, 9 deletions
diff --git a/src/ui/RoomSettings.cpp b/src/ui/RoomSettings.cpp
index 288dac4e..b7fb0887 100644
--- a/src/ui/RoomSettings.cpp
+++ b/src/ui/RoomSettings.cpp
@@ -229,15 +229,7 @@ RoomSettings::RoomSettings(QString roomid, QObject *parent)
}
emit accessJoinRulesChanged();
- if (auto hiddenEvents = cache::client()->getAccountData(
- mtx::events::EventType::NhekoHiddenEvents, roomid_.toStdString())) {
- if (auto tmp = std::get_if<mtx::events::EphemeralEvent<
- mtx::events::account_data::nheko_extensions::HiddenEvents>>(&*hiddenEvents)) {
- for (const auto event : tmp->content.hidden_event_types) {
- hiddenEvents_.insert(mtx::events::to_string(event).data());
- }
- }
- }
+ readHiddenEventsSettings(roomid_);
}
QString
@@ -682,3 +674,17 @@ RoomSettings::eventHidden(const QString event) const
{
return hiddenEvents_.contains(event);
}
+
+void
+RoomSettings::readHiddenEventsSettings(const QString &roomId)
+{
+ if (auto hiddenEvents = cache::client()->getAccountData(
+ mtx::events::EventType::NhekoHiddenEvents, roomId.toStdString())) {
+ if (auto tmp = std::get_if<mtx::events::EphemeralEvent<
+ mtx::events::account_data::nheko_extensions::HiddenEvents>>(&*hiddenEvents)) {
+ for (const auto event : tmp->content.hidden_event_types) {
+ hiddenEvents_.insert(mtx::events::to_string(event).data());
+ }
+ }
+ }
+}
diff --git a/src/ui/RoomSettings.h b/src/ui/RoomSettings.h
index db1b6988..438ac979 100644
--- a/src/ui/RoomSettings.h
+++ b/src/ui/RoomSettings.h
@@ -134,6 +134,7 @@ private:
void updateAccessRules(const std::string &room_id,
const mtx::events::state::JoinRules &,
const mtx::events::state::GuestAccess &);
+ void readHiddenEventsSettings(const QString &roomId = {});
private:
QString roomid_;
|