diff --git a/src/timeline/EventStore.cpp b/src/timeline/EventStore.cpp
index 5aa105b0..84b6dcd4 100644
--- a/src/timeline/EventStore.cpp
+++ b/src/timeline/EventStore.cpp
@@ -155,7 +155,7 @@ EventStore::EventStore(std::string room_id, QObject *)
}
});
},
- event->data);
+ event.value());
});
connect(
@@ -195,20 +195,20 @@ EventStore::EventStore(std::string room_id, QObject *)
mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> original_encrypted;
if (auto encrypted =
std::get_if<mtx::events::EncryptedEvent<mtx::events::msg::Encrypted>>(
- &pending_event->data)) {
+ &pending_event.value())) {
auto d_event = decryptEvent({room_id_, encrypted->event_id}, *encrypted);
if (d_event->event) {
- was_encrypted = true;
- original_encrypted = *encrypted;
- pending_event->data = *d_event->event;
+ was_encrypted = true;
+ original_encrypted = std::move(*encrypted);
+ *pending_event = std::move(*d_event->event);
}
}
- auto relations = mtx::accessors::relations(pending_event->data);
+ auto relations = mtx::accessors::relations(pending_event.value());
// Replace the blockquote in fallback reply
auto related_text = std::get_if<mtx::events::RoomEvent<mtx::events::msg::Text>>(
- &pending_event->data);
+ &pending_event.value());
if (related_text && relations.reply_to() == txn_id) {
size_t index = related_text->content.formatted_body.find(txn_id);
if (index != std::string::npos) {
@@ -228,7 +228,7 @@ EventStore::EventStore(std::string room_id, QObject *)
if (!replaced_txn)
continue;
- mtx::accessors::set_relations(pending_event->data, std::move(relations));
+ mtx::accessors::set_relations(pending_event.value(), std::move(relations));
// reencrypt. This is a bit of a hack and might make people able to read the
// message, that were in the room at the time of sending the last pending message.
@@ -246,7 +246,7 @@ EventStore::EventStore(std::string room_id, QObject *)
{"content", nlohmann::json(msg.content)},
{"room_id", room_id_}};
},
- pending_event->data);
+ pending_event.value());
auto data = olm::encrypt_group_message_with_session(
session.session, http::client()->device_id(), std::move(doc));
@@ -255,8 +255,8 @@ EventStore::EventStore(std::string room_id, QObject *)
olm_outbound_group_session_message_index(session.session.get());
cache::updateOutboundMegolmSession(room_id_, session.data, session.session);
- original_encrypted.content = data;
- pending_event->data = original_encrypted;
+ original_encrypted.content = std::move(data);
+ *pending_event = std::move(original_encrypted);
}
cache::client()->replaceEvent(room_id_, pending_event_id, *pending_event);
@@ -629,7 +629,7 @@ EventStore::reactions(const std::string &event_id)
return temp;
}
-mtx::events::collections::TimelineEvents *
+mtx::events::collections::TimelineEvents const *
EventStore::get(int idx, bool decrypt)
{
if (this->thread() != QThread::currentThread())
@@ -645,17 +645,17 @@ EventStore::get(int idx, bool decrypt)
if (!event_id)
return nullptr;
- std::optional<mtx::events::collections::TimelineEvent> event;
+ std::optional<mtx::events::collections::TimelineEvents> event;
auto edits_ = edits(*event_id);
if (edits_.empty())
event = cache::client()->getEvent(room_id_, *event_id);
else
- event = mtx::events::collections::TimelineEvent{edits_.back()};
+ event = mtx::events::collections::TimelineEvents{edits_.back()};
if (!event)
return nullptr;
else
- event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data));
+ event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event));
events_.insert(index, event_ptr);
}
@@ -692,7 +692,7 @@ EventStore::indexToId(int idx) const
return cache::client()->getTimelineEventId(room_id_, toInternalIdx(idx));
}
-olm::DecryptionResult *
+olm::DecryptionResult const *
EventStore::decryptEvent(const IdIndex &idx,
const mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> &e)
{
@@ -813,7 +813,7 @@ EventStore::enableKeyRequests(bool suppressKeyRequests_)
suppressKeyRequests = true;
}
-mtx::events::collections::TimelineEvents *
+mtx::events::collections::TimelineEvents const *
EventStore::get(const std::string &id,
std::string_view related_to,
bool decrypt,
@@ -856,7 +856,7 @@ EventStore::get(const std::string &id,
});
return nullptr;
}
- event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data));
+ event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event));
events_by_id_.insert(index, event_ptr);
}
@@ -895,7 +895,7 @@ EventStore::decryptionError(std::string id)
if (!event) {
return olm::DecryptionErrorCode::NoError;
}
- event_ptr = new mtx::events::collections::TimelineEvents(std::move(event->data));
+ event_ptr = new mtx::events::collections::TimelineEvents(std::move(*event));
events_by_id_.insert(index, event_ptr);
}
diff --git a/src/timeline/EventStore.h b/src/timeline/EventStore.h
index 5018ffbf..bf905fc6 100644
--- a/src/timeline/EventStore.h
+++ b/src/timeline/EventStore.h
@@ -73,12 +73,12 @@ public:
// optionally returns the event or nullptr and fetches it, after which it emits a
// relatedFetched event
- mtx::events::collections::TimelineEvents *get(const std::string &id,
- std::string_view related_to,
- bool decrypt = true,
- bool resolve_edits = true);
+ mtx::events::collections::TimelineEvents const *get(const std::string &id,
+ std::string_view related_to,
+ bool decrypt = true,
+ bool resolve_edits = true);
// always returns a proper event as long as the idx is valid
- mtx::events::collections::TimelineEvents *get(int idx, bool decrypt = true);
+ mtx::events::collections::TimelineEvents const *get(int idx, bool decrypt = true);
QVariantList reactions(const std::string &event_id);
std::vector<mtx::events::collections::TimelineEvents> edits(const std::string &event_id);
@@ -126,7 +126,7 @@ public slots:
void enableKeyRequests(bool suppressKeyRequests_);
private:
- olm::DecryptionResult *
+ olm::DecryptionResult const *
decryptEvent(const IdIndex &idx,
const mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> &e);
diff --git a/src/timeline/InputBar.cpp b/src/timeline/InputBar.cpp
index fe8b8e48..879ec7cc 100644
--- a/src/timeline/InputBar.cpp
+++ b/src/timeline/InputBar.cpp
@@ -53,7 +53,7 @@ threadFallbackEventId(const std::string &room_id, const std::string &thread_id)
for (const auto &[index, event_id] : orderedEvents) {
(void)index;
if (auto event = cache::client()->getEvent(room_id, event_id)) {
- if (mtx::accessors::relations(event->data).thread() == thread_id)
+ if (mtx::accessors::relations(event.value()).thread() == thread_id)
return std::string(event_id);
}
}
diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp
index 918d1c0b..f80f2ee9 100644
--- a/src/timeline/TimelineModel.cpp
+++ b/src/timeline/TimelineModel.cpp
@@ -776,13 +776,12 @@ TimelineModel::data(const mtx::events::collections::TimelineEvents &event, int r
return qml_mtx_events::NotificationLevel::Nothing;
const auto &id = event_id(event);
- std::vector<std::pair<mtx::common::Relation, mtx::events::collections::TimelineEvent>>
+ std::vector<std::pair<mtx::common::Relation, mtx::events::collections::TimelineEvents>>
relatedEvents;
for (const auto &r : mtx::accessors::relations(event).relations) {
auto related = events.get(r.event_id, id);
if (related) {
- relatedEvents.emplace_back(r,
- mtx::events::collections::TimelineEvent{*related});
+ relatedEvents.emplace_back(r, *related);
}
}
@@ -1790,7 +1789,7 @@ TimelineModel::openMedia(const QString &eventId)
bool
TimelineModel::saveMedia(const QString &eventId) const
{
- mtx::events::collections::TimelineEvents *event = events.get(eventId.toStdString(), "");
+ auto event = events.get(eventId.toStdString(), "");
if (!event)
return false;
@@ -1865,7 +1864,7 @@ void
TimelineModel::cacheMedia(const QString &eventId,
const std::function<void(const QString)> &callback)
{
- mtx::events::collections::TimelineEvents *event = events.get(eventId.toStdString(), "");
+ auto event = events.get(eventId.toStdString(), "");
if (!event)
return;
@@ -2150,7 +2149,7 @@ TimelineModel::formatTypingUsers(const std::vector<QString> &users, const QColor
QString
TimelineModel::formatJoinRuleEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2187,7 +2186,7 @@ TimelineModel::formatJoinRuleEvent(const QString &id)
QString
TimelineModel::formatGuestAccessEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2211,7 +2210,7 @@ TimelineModel::formatGuestAccessEvent(const QString &id)
QString
TimelineModel::formatHistoryVisibilityEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2243,7 +2242,7 @@ TimelineModel::formatHistoryVisibilityEvent(const QString &id)
QString
TimelineModel::formatPowerLevelEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2251,7 +2250,7 @@ TimelineModel::formatPowerLevelEvent(const QString &id)
if (!event)
return QString();
- mtx::events::StateEvent<mtx::events::state::PowerLevels> *prevEvent = nullptr;
+ mtx::events::StateEvent<mtx::events::state::PowerLevels> const *prevEvent = nullptr;
if (!event->unsigned_data.replaces_state.empty()) {
auto tempPrevEvent = events.get(event->unsigned_data.replaces_state, event->event_id);
if (tempPrevEvent) {
@@ -2519,7 +2518,7 @@ TimelineModel::formatPowerLevelEvent(const QString &id)
QString
TimelineModel::formatImagePackEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2527,7 +2526,7 @@ TimelineModel::formatImagePackEvent(const QString &id)
if (!event)
return {};
- mtx::events::StateEvent<mtx::events::msc2545::ImagePack> *prevEvent = nullptr;
+ mtx::events::StateEvent<mtx::events::msc2545::ImagePack> const *prevEvent = nullptr;
if (!event->unsigned_data.replaces_state.empty()) {
auto tempPrevEvent = events.get(event->unsigned_data.replaces_state, event->event_id);
if (tempPrevEvent) {
@@ -2591,8 +2590,8 @@ TimelineModel::formatImagePackEvent(const QString &id)
QString
TimelineModel::formatPolicyRule(const QString &id)
{
- auto idStr = id.toStdString();
- mtx::events::collections::TimelineEvents *e = events.get(idStr, "");
+ auto idStr = id.toStdString();
+ auto e = events.get(idStr, "");
if (!e)
return {};
@@ -2683,7 +2682,7 @@ QVariantMap
TimelineModel::formatRedactedEvent(const QString &id)
{
QVariantMap pair{{"first", ""}, {"second", ""}};
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return pair;
@@ -2720,7 +2719,7 @@ TimelineModel::formatRedactedEvent(const QString &id)
void
TimelineModel::acceptKnock(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return;
@@ -2745,7 +2744,7 @@ TimelineModel::acceptKnock(const QString &id)
bool
TimelineModel::showAcceptKnockButton(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return false;
@@ -2766,7 +2765,7 @@ TimelineModel::showAcceptKnockButton(const QString &id)
void
TimelineModel::joinReplacementRoom(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return;
@@ -2792,7 +2791,7 @@ TimelineModel::joinReplacementRoom(const QString &id)
QString
TimelineModel::formatMemberEvent(const QString &id)
{
- mtx::events::collections::TimelineEvents *e = events.get(id.toStdString(), "");
+ auto e = events.get(id.toStdString(), "");
if (!e)
return {};
@@ -2800,7 +2799,7 @@ TimelineModel::formatMemberEvent(const QString &id)
if (!event)
return {};
- mtx::events::StateEvent<mtx::events::state::Member> *prevEvent = nullptr;
+ mtx::events::StateEvent<mtx::events::state::Member> const *prevEvent = nullptr;
if (!event->unsigned_data.replaces_state.empty()) {
auto tempPrevEvent = events.get(event->unsigned_data.replaces_state, event->event_id);
if (tempPrevEvent) {
diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h
index ef845bb5..0244c1b1 100644
--- a/src/timeline/TimelineModel.h
+++ b/src/timeline/TimelineModel.h
@@ -483,7 +483,7 @@ signals:
void isDirectChanged();
void directChatOtherUserIdChanged();
void permissionsChanged();
- void forwardToRoom(mtx::events::collections::TimelineEvents *e, QString roomId);
+ void forwardToRoom(mtx::events::collections::TimelineEvents const *e, QString roomId);
void scrollTargetChanged();
diff --git a/src/timeline/TimelineViewManager.cpp b/src/timeline/TimelineViewManager.cpp
index c19d0c3f..b949e4c3 100644
--- a/src/timeline/TimelineViewManager.cpp
+++ b/src/timeline/TimelineViewManager.cpp
@@ -461,7 +461,7 @@ TimelineViewManager::completerFor(const QString &completerName, const QString &r
}
void
-TimelineViewManager::forwardMessageToRoom(mtx::events::collections::TimelineEvents *e,
+TimelineViewManager::forwardMessageToRoom(mtx::events::collections::TimelineEvents const *e,
QString roomId)
{
auto room = rooms_->getRoomById(roomId);
diff --git a/src/timeline/TimelineViewManager.h b/src/timeline/TimelineViewManager.h
index 089b2e1f..ee5cf031 100644
--- a/src/timeline/TimelineViewManager.h
+++ b/src/timeline/TimelineViewManager.h
@@ -113,7 +113,7 @@ public slots:
QObject *completerFor(const QString &completerName,
const QString &roomId = QLatin1String(QLatin1String("")));
- void forwardMessageToRoom(mtx::events::collections::TimelineEvents *e, QString roomId);
+ void forwardMessageToRoom(mtx::events::collections::TimelineEvents const *e, QString roomId);
RoomlistModel *rooms() { return rooms_; }
|