diff --git a/src/Cache.cpp b/src/Cache.cpp index f6f8052d0e7dd7ab120f3ba4a99a37dada7e0440..dfd7475ce3200c33ccc0b08465da87b99c79fc88 100644 --- a/src/Cache.cpp +++ b/src/Cache.cpp @@ -80,7 +80,7 @@ using CachedReceipts = std::multimap<uint64_t, std::string, std::greater<uint64_ using Receipts = std::map<std::string, std::map<std::string, uint64_t>>; Q_DECLARE_METATYPE(SearchResult) -Q_DECLARE_METATYPE(QVector<SearchResult>) +Q_DECLARE_METATYPE(std::vector<SearchResult>) Q_DECLARE_METATYPE(RoomMember) Q_DECLARE_METATYPE(mtx::responses::Timeline) Q_DECLARE_METATYPE(RoomSearchResult) @@ -1834,7 +1834,7 @@ Cache::searchRooms(const std::string &query, std::uint8_t max_items) return results; } -QVector<SearchResult> +std::vector<SearchResult> Cache::searchUsers(const std::string &room_id, const std::string &query, std::uint8_t max_items) { std::multimap<int, std::pair<std::string, std::string>> items; @@ -1857,7 +1857,7 @@ Cache::searchUsers(const std::string &room_id, const std::string &query, std::ui else if (items.size() > 0) std::advance(end, items.size()); - QVector<SearchResult> results; + std::vector<SearchResult> results; for (auto it = items.begin(); it != end; it++) { const auto user = it->second; results.push_back(SearchResult{QString::fromStdString(user.first), @@ -2390,12 +2390,11 @@ void init(const QString &user_id) { qRegisterMetaType<SearchResult>(); - qRegisterMetaType<QVector<SearchResult>>(); + qRegisterMetaType<std::vector<SearchResult>>(); qRegisterMetaType<RoomMember>(); qRegisterMetaType<RoomSearchResult>(); qRegisterMetaType<RoomInfo>(); qRegisterMetaType<QMap<QString, RoomInfo>>(); - qRegisterMetaType<QMap<QString, mtx::responses::Notifications>>(); qRegisterMetaType<std::map<QString, RoomInfo>>(); qRegisterMetaType<std::map<QString, mtx::responses::Timeline>>(); @@ -2734,7 +2733,7 @@ calculateRoomReadStatus() instance_->calculateRoomReadStatus(); } -QVector<SearchResult> +std::vector<SearchResult> searchUsers(const std::string &room_id, const std::string &query, std::uint8_t max_items) { return instance_->searchUsers(room_id, query, max_items); diff --git a/src/Cache.h b/src/Cache.h index a8991eb5cfac09f39f3b22c45c54efa7c8c05ffb..69b3ef2ddd0d40e65e9ffd9e70627a13fa72df48 100644 --- a/src/Cache.h +++ b/src/Cache.h @@ -218,7 +218,7 @@ calculateRoomReadStatus(const std::string &room_id); void calculateRoomReadStatus(); -QVector<SearchResult> +std::vector<SearchResult> searchUsers(const std::string &room_id, const std::string &query, std::uint8_t max_items = 5); std::vector<RoomSearchResult> searchRooms(const std::string &query, std::uint8_t max_items = 5); diff --git a/src/Cache_p.h b/src/Cache_p.h index 32f2a67d5e15e16302f7d28d5b9ffca254e98f4c..b76a512f937d716c5f4913ab78a083c07909b344 100644 --- a/src/Cache_p.h +++ b/src/Cache_p.h @@ -172,9 +172,9 @@ public: bool calculateRoomReadStatus(const std::string &room_id); void calculateRoomReadStatus(); - QVector<SearchResult> searchUsers(const std::string &room_id, - const std::string &query, - std::uint8_t max_items = 5); + std::vector<SearchResult> searchUsers(const std::string &room_id, + const std::string &query, + std::uint8_t max_items = 5); std::vector<RoomSearchResult> searchRooms(const std::string &query, std::uint8_t max_items = 5); diff --git a/src/LoginPage.cpp b/src/LoginPage.cpp index c244db286572b952f87141a1aa5ee46039174c26..c06137c91e15c600fe8193d327d2bbb9636d3ddc 100644 --- a/src/LoginPage.cpp +++ b/src/LoginPage.cpp @@ -19,6 +19,7 @@ #include <QStyleOption> #include <mtx/identifiers.hpp> +#include <mtx/responses/login.hpp> #include "Config.h" #include "Logging.h" diff --git a/src/MatrixClient.cpp b/src/MatrixClient.cpp index 12d7ac91b2ae21c2ee741c8322e118b77bd2effc..b69ba4806b97240983b38c07446b9b339ee87b75 100644 --- a/src/MatrixClient.cpp +++ b/src/MatrixClient.cpp @@ -2,6 +2,26 @@ #include <memory> +#include <QMetaType> +#include <QObject> +#include <QString> + +#include "nlohmann/json.hpp" +#include <mtx/responses.hpp> + +Q_DECLARE_METATYPE(mtx::responses::Login) +Q_DECLARE_METATYPE(mtx::responses::Messages) +Q_DECLARE_METATYPE(mtx::responses::Notifications) +Q_DECLARE_METATYPE(mtx::responses::Rooms) +Q_DECLARE_METATYPE(mtx::responses::Sync) +Q_DECLARE_METATYPE(mtx::responses::JoinedGroups) +Q_DECLARE_METATYPE(mtx::responses::GroupProfile) + +Q_DECLARE_METATYPE(nlohmann::json) +Q_DECLARE_METATYPE(std::string) +Q_DECLARE_METATYPE(std::vector<std::string>) +Q_DECLARE_METATYPE(std::vector<QString>) + namespace { auto client_ = std::make_shared<mtx::http::Client>(); } diff --git a/src/MatrixClient.h b/src/MatrixClient.h index c77b1183b9cf27ddda4ea4ec2337b2044c7dc858..4db51095aa23c1d8215e2e904ac6f190a622db23 100644 --- a/src/MatrixClient.h +++ b/src/MatrixClient.h @@ -1,25 +1,7 @@ #pragma once -#include <QMetaType> -#include <QObject> -#include <QString> - -#include "nlohmann/json.hpp" -#include <mtx/responses.hpp> #include <mtxclient/http/client.hpp> -Q_DECLARE_METATYPE(mtx::responses::Login) -Q_DECLARE_METATYPE(mtx::responses::Messages) -Q_DECLARE_METATYPE(mtx::responses::Notifications) -Q_DECLARE_METATYPE(mtx::responses::Rooms) -Q_DECLARE_METATYPE(mtx::responses::Sync) -Q_DECLARE_METATYPE(mtx::responses::JoinedGroups) -Q_DECLARE_METATYPE(mtx::responses::GroupProfile) -Q_DECLARE_METATYPE(std::string) -Q_DECLARE_METATYPE(nlohmann::json) -Q_DECLARE_METATYPE(std::vector<std::string>) -Q_DECLARE_METATYPE(std::vector<QString>) - namespace http { mtx::http::Client * client(); diff --git a/src/QuickSwitcher.cpp b/src/QuickSwitcher.cpp index 53dd21e0a00250792dfdf536a78a1bacacd5439b..05a9f431f12335c993bd6b3d8d5ebd6da65eb06a 100644 --- a/src/QuickSwitcher.cpp +++ b/src/QuickSwitcher.cpp @@ -26,6 +26,8 @@ #include "QuickSwitcher.h" #include "popups/SuggestionsPopup.h" +Q_DECLARE_METATYPE(std::vector<RoomSearchResult>) + RoomSearchInput::RoomSearchInput(QWidget *parent) : TextField(parent) {} diff --git a/src/QuickSwitcher.h b/src/QuickSwitcher.h index 05f7be07ccfb5b67c5b73751d3e7c2844c0588bc..5bc3165071ac07755fb3d30a351c6f776c008ca1 100644 --- a/src/QuickSwitcher.h +++ b/src/QuickSwitcher.h @@ -25,8 +25,6 @@ #include "popups/SuggestionsPopup.h" #include "ui/TextField.h" -Q_DECLARE_METATYPE(std::vector<RoomSearchResult>) - class RoomSearchInput : public TextField { Q_OBJECT diff --git a/src/RegisterPage.cpp b/src/RegisterPage.cpp index 942fd1b8b19997d8d972ab80d6cdfee3bd3d6fcb..76721036eb3d75cc8a1f4a194585df1da172eece 100644 --- a/src/RegisterPage.cpp +++ b/src/RegisterPage.cpp @@ -19,6 +19,8 @@ #include <QStyleOption> #include <QTimer> +#include <mtx/responses/register.hpp> + #include "Config.h" #include "Logging.h" #include "MainWindow.h" diff --git a/src/RoomList.h b/src/RoomList.h index d921990b8ce18725c1355e717e9de66c39a18d72..51a2404372189ab5b29b0b99b98ca60bdb8dc41f 100644 --- a/src/RoomList.h +++ b/src/RoomList.h @@ -17,15 +17,12 @@ #pragma once -#include <QMetaType> #include <QPushButton> #include <QScrollArea> #include <QSharedPointer> #include <QVBoxLayout> #include <QWidget> -#include <mtx.hpp> - class LeaveRoomDialog; class OverlayModal; class RoomInfoListItem; diff --git a/src/TextInputWidget.cpp b/src/TextInputWidget.cpp index 7be50ab5e3dee9bcd588b94f9c3c1a52e20b785b..2ad74e3a5bd616e297032a67d28f5a1829c49b5e 100644 --- a/src/TextInputWidget.cpp +++ b/src/TextInputWidget.cpp @@ -109,7 +109,7 @@ FilteredTextEdit::FilteredTextEdit(QWidget *parent) } void -FilteredTextEdit::showResults(const QVector<SearchResult> &results) +FilteredTextEdit::showResults(const std::vector<SearchResult> &results) { QPoint pos; diff --git a/src/TextInputWidget.h b/src/TextInputWidget.h index a430aa5c433e63b9fcbc8cc99c872e156e8a14ba..2f267a23d7703b2f12fac65c09bfd910923ec609 100644 --- a/src/TextInputWidget.h +++ b/src/TextInputWidget.h @@ -76,13 +76,13 @@ signals: //! Trigger the suggestion popup. void showSuggestions(const QString &query); - void resultsRetrieved(const QVector<SearchResult> &results); + void resultsRetrieved(const std::vector<SearchResult> &results); void selectNextSuggestion(); void selectPreviousSuggestion(); void selectHoveredSuggestion(); public slots: - void showResults(const QVector<SearchResult> &results); + void showResults(const std::vector<SearchResult> &results); protected: void keyPressEvent(QKeyEvent *event) override; diff --git a/src/dialogs/UserProfile.cpp b/src/dialogs/UserProfile.cpp index 273ffd5462668d5a02e50c0116135a43f953827d..f1dd77dfe7d448a339808cfa90e58d47b411ed97 100644 --- a/src/dialogs/UserProfile.cpp +++ b/src/dialogs/UserProfile.cpp @@ -15,6 +15,8 @@ using namespace dialogs; +Q_DECLARE_METATYPE(std::vector<DeviceInfo>) + constexpr int BUTTON_SIZE = 36; constexpr int BUTTON_RADIUS = BUTTON_SIZE / 2; constexpr int WIDGET_MARGIN = 20; diff --git a/src/dialogs/UserProfile.h b/src/dialogs/UserProfile.h index 0f684cda906bdc2ba4eb87c14b6210ccb0c48667..81276d2aedb8d63661db0437f936ab421ebac38c 100644 --- a/src/dialogs/UserProfile.h +++ b/src/dialogs/UserProfile.h @@ -15,8 +15,6 @@ struct DeviceInfo QString display_name; }; -Q_DECLARE_METATYPE(std::vector<DeviceInfo>) - class Proxy : public QObject { Q_OBJECT diff --git a/src/popups/SuggestionsPopup.cpp b/src/popups/SuggestionsPopup.cpp index ba1f77b92cc124d5a7da233ec63a298582337f2d..8f355b3836a4682887808071068dd92f6cbdf3e8 100644 --- a/src/popups/SuggestionsPopup.cpp +++ b/src/popups/SuggestionsPopup.cpp @@ -60,9 +60,9 @@ SuggestionsPopup::addRooms(const std::vector<RoomSearchResult> &rooms) } void -SuggestionsPopup::addUsers(const QVector<SearchResult> &users) +SuggestionsPopup::addUsers(const std::vector<SearchResult> &users) { - if (users.isEmpty()) { + if (users.empty()) { hide(); return; } diff --git a/src/popups/SuggestionsPopup.h b/src/popups/SuggestionsPopup.h index de52760ade5378a8a26ebb184b7d8aa1a829bdb2..dcd054f8ba04df9f1a55ad8e11948d4612d67fdd 100644 --- a/src/popups/SuggestionsPopup.h +++ b/src/popups/SuggestionsPopup.h @@ -9,8 +9,6 @@ #include "ChatPage.h" #include "PopupItem.h" -Q_DECLARE_METATYPE(QVector<SearchResult>) - class SuggestionsPopup : public QWidget { Q_OBJECT @@ -33,7 +31,7 @@ public: } public slots: - void addUsers(const QVector<SearchResult> &users); + void addUsers(const std::vector<SearchResult> &users); void addRooms(const std::vector<RoomSearchResult> &rooms); //! Move to the next available suggestion item.