From d74766245facd48805c2576c711d20cafa33aa35 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sat, 18 Sep 2021 18:07:10 +0200 Subject: Show option to open saucenao result urls ctrl+c for info should only copy the url --- plugins/Info.hpp | 3 +++ plugins/Page.hpp | 2 ++ plugins/Saucenao.hpp | 6 ++---- 3 files changed, 7 insertions(+), 4 deletions(-) (limited to 'plugins') diff --git a/plugins/Info.hpp b/plugins/Info.hpp index af62282..fbf7a41 100644 --- a/plugins/Info.hpp +++ b/plugins/Info.hpp @@ -10,7 +10,10 @@ namespace QuickMedia { PluginResult submit(const std::string &title, const std::string &url, std::vector &result_tabs) override; bool submit_is_async() const override { return false; } + void copy_to_clipboard(const BodyItem *body_item) const override; + static std::shared_ptr add_url(const std::string &url); static std::shared_ptr add_reverse_image_search(const std::string &image_url); + static std::shared_ptr add_google_search(const std::string &search_term); }; } \ No newline at end of file diff --git a/plugins/Page.hpp b/plugins/Page.hpp index d5daa3d..4fed1c8 100644 --- a/plugins/Page.hpp +++ b/plugins/Page.hpp @@ -74,6 +74,8 @@ namespace QuickMedia { virtual void on_navigate_to_page(Body *body) { (void)body; } virtual void cancel_operation() {} + virtual void copy_to_clipboard(const BodyItem *body_item) const; + std::unique_ptr create_body(bool plain_text_list = false, bool prefer_card_view = false); std::unique_ptr create_search_bar(const std::string &placeholder_text, int search_delay); diff --git a/plugins/Saucenao.hpp b/plugins/Saucenao.hpp index 297dde3..d58b424 100644 --- a/plugins/Saucenao.hpp +++ b/plugins/Saucenao.hpp @@ -7,11 +7,9 @@ namespace QuickMedia { public: SaucenaoPage(Program *program, const std::string &path, bool is_local) : LazyFetchPage(program), path(path), is_local(is_local) {} const char* get_title() const override { return "SauceNAO"; } - PluginResult submit(const std::string&, const std::string&, std::vector&) override { - return PluginResult::OK; - } + bool submit_is_async() const override { return false; } + PluginResult submit(const std::string &title, const std::string &url, std::vector &result_tabs) override; PluginResult lazy_fetch(BodyItems &result_items) override; - bool is_single_page() const override { return true; } private: std::string path; bool is_local; -- cgit v1.2.3