aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Matrix.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2022-02-07 22:54:20 +0100
committerdec05eba <dec05eba@protonmail.com>2022-02-07 22:55:11 +0100
commit75c610d1f65d741bbeba9f1ddeef60a6e9315427 (patch)
tree0dd79a5a7f35c89b9672d55fbf24cb1f6de13aa9 /src/plugins/Matrix.cpp
parent9539a71dbeafdc4107d3b92eefada332ee45579a (diff)
Use one struct for all args in Page::submit instead of multiple args (easier to add new fields without changing code)
Also remove submit_body_item from page.
Diffstat (limited to 'src/plugins/Matrix.cpp')
-rw-r--r--src/plugins/Matrix.cpp32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp
index c69a6df..a71b3a8 100644
--- a/src/plugins/Matrix.cpp
+++ b/src/plugins/Matrix.cpp
@@ -668,8 +668,8 @@ namespace QuickMedia {
room_tags_page->set_current_rooms_page(nullptr);
}
- PluginResult MatrixRoomsPage::submit(const std::string&, const std::string &url, std::vector<Tab> &result_tabs) {
- result_tabs.push_back(Tab{nullptr, std::make_unique<MatrixChatPage>(program, url, this), nullptr});
+ PluginResult MatrixRoomsPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) {
+ result_tabs.push_back(Tab{nullptr, std::make_unique<MatrixChatPage>(program, args.url, this), nullptr});
return PluginResult::OK;
}
@@ -735,10 +735,10 @@ namespace QuickMedia {
current_chat_page->should_clear_data = true;
}
- PluginResult MatrixRoomTagsPage::submit(const std::string&, const std::string &url, std::vector<Tab> &result_tabs) {
+ PluginResult MatrixRoomTagsPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) {
auto body = create_body(true);
Body *body_ptr = body.get();
- TagData &tag_data = tag_body_items_by_name[url];
+ TagData &tag_data = tag_body_items_by_name[args.url];
BodyItems room_body_items = tag_data.room_body_items;
sort_room_body_items(room_body_items);
body->set_items(std::move(room_body_items));
@@ -834,15 +834,15 @@ namespace QuickMedia {
}
- PluginResult MatrixInvitesPage::submit(const std::string &title, const std::string &url, std::vector<Tab> &result_tabs) {
+ PluginResult MatrixInvitesPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) {
auto body = create_body();
body->append_item(BodyItem::create("Accept"));
body->append_item(BodyItem::create("Decline"));
- result_tabs.push_back(Tab{std::move(body), std::make_unique<MatrixInviteDetailsPage>(program, matrix, this, url, "Invite to " + title), nullptr});
+ result_tabs.push_back(Tab{std::move(body), std::make_unique<MatrixInviteDetailsPage>(program, matrix, this, args.url, "Invite to " + title), nullptr});
return PluginResult::OK;
}
- PluginResult MatrixInviteDetailsPage::submit(const std::string &title, const std::string&, std::vector<Tab>&) {
+ PluginResult MatrixInviteDetailsPage::submit(const SubmitArgs &args, std::vector<Tab>&) {
if(title == "Accept") {
if(matrix->join_room(room_id) == PluginResult::OK) {
// TODO: Wait for room invite list change from the server instead of removing room here.
@@ -982,8 +982,8 @@ namespace QuickMedia {
rooms_page->set_room_as_read(room);
}
- PluginResult MatrixRoomDirectoryPage::submit(const std::string &title, const std::string&, std::vector<Tab> &result_tabs) {
- std::string server_name = title;
+ PluginResult MatrixRoomDirectoryPage::submit(const SubmitArgs &args, std::vector<Tab> &result_tabs) {
+ std::string server_name = args.title;
if(strncmp(server_name.c_str(), "http://", 7) == 0)
server_name.erase(0, 7);
@@ -1017,12 +1017,12 @@ namespace QuickMedia {
return plugin_result_to_search_result(lazy_fetch(result_items));
}
- PluginResult MatrixServerRoomListPage::submit(const std::string &title, const std::string &url, std::vector<Tab>&) {
- if(matrix->join_room(url) == PluginResult::OK) {
- show_notification("QuickMedia", "You joined " + title, Urgency::NORMAL);
+ PluginResult MatrixServerRoomListPage::submit(const SubmitArgs &args, std::vector<Tab>&) {
+ if(matrix->join_room(args.url) == PluginResult::OK) {
+ show_notification("QuickMedia", "You joined " + args.title, Urgency::NORMAL);
program->set_go_to_previous_page();
} else {
- show_notification("QuickMedia", "Failed to join " + title, Urgency::CRITICAL);
+ show_notification("QuickMedia", "Failed to join " + args.title, Urgency::CRITICAL);
}
return PluginResult::OK;
}
@@ -1060,7 +1060,7 @@ namespace QuickMedia {
MatrixNotificationsPage::MatrixNotificationsPage(Program *program, Matrix *matrix, Body *notifications_body, MatrixRoomsPage *all_rooms_page) :
LazyFetchPage(program), matrix(matrix), notifications_body(notifications_body), all_rooms_page(all_rooms_page) {}
- PluginResult MatrixNotificationsPage::submit(const std::string&, const std::string&, std::vector<Tab> &result_tabs) {
+ PluginResult MatrixNotificationsPage::submit(const SubmitArgs&, std::vector<Tab> &result_tabs) {
BodyItem *selected_item = notifications_body->get_selected();
if(!selected_item)
return PluginResult::OK;
@@ -1145,8 +1145,8 @@ namespace QuickMedia {
return plugin_result_to_search_result(matrix->search_user(str, 20, result_items));
}
- PluginResult MatrixInviteUserPage::submit(const std::string&, const std::string &url, std::vector<Tab>&) {
- PluginResult result = matrix->invite_user(room_id, url);
+ PluginResult MatrixInviteUserPage::submit(const SubmitArgs &args, std::vector<Tab>&) {
+ PluginResult result = matrix->invite_user(room_id, args.url);
if(result != PluginResult::OK) return result;
program->set_go_to_previous_page();
return PluginResult::OK;