diff --git a/src/timeline/models/mediamessagefiltermodel.cpp b/src/timeline/models/mediamessagefiltermodel.cpp index 3a254b710..f5d520a38 100644 --- a/src/timeline/models/mediamessagefiltermodel.cpp +++ b/src/timeline/models/mediamessagefiltermodel.cpp @@ -87,6 +87,11 @@ QHash MediaMessageFilterModel::roleNames() const return roles; } +const Quotient::RoomEvent *MediaMessageFilterModel::findEvent(const QString &eventId) const +{ + return static_cast(sourceModel())->findEvent(eventId); +} + int MediaMessageFilterModel::getRowForEventId(const QString &eventId) const { for (auto i = 0; i < rowCount(); i++) { diff --git a/src/timeline/models/mediamessagefiltermodel.h b/src/timeline/models/mediamessagefiltermodel.h index ffafd10d1..dc1e4b6c3 100644 --- a/src/timeline/models/mediamessagefiltermodel.h +++ b/src/timeline/models/mediamessagefiltermodel.h @@ -63,5 +63,10 @@ public: */ [[nodiscard]] QHash roleNames() const override; + /** + * @brief Finds the event of the given event ID in the model, returning nullptr if no matches were found. + */ + Q_INVOKABLE const Quotient::RoomEvent *findEvent(const QString &eventId) const; + int getRowForEventId(const QString &eventId) const; };