aboutsummaryrefslogtreecommitdiff
path: root/src/QuickMedia.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2021-05-02 01:01:39 +0200
committerdec05eba <dec05eba@protonmail.com>2021-05-02 01:01:39 +0200
commitd1f1683bc44ebc51b45083280adabf60d0dd27d7 (patch)
treeb448da7229683f3c5822eb072ac3edba1f2490f6 /src/QuickMedia.cpp
parent08740aec621a296497c8ed168672d62c3aad663e (diff)
Make submit async, sort manga combined view by manga service name, show correct timeout, use youtube thumbnail without black bars at top and bottom
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r--src/QuickMedia.cpp25
1 files changed, 16 insertions, 9 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index b9f0bc8..64f326b 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -354,8 +354,8 @@ namespace QuickMedia {
auto body_item = BodyItem::create(recommended_title_json.asString());
body_item->url = "https://www.youtube.com/watch?v=" + recommended_item_id;
- body_item->thumbnail_url = "https://img.youtube.com/vi/" + recommended_item_id + "/hqdefault.jpg";
- body_item->thumbnail_size = sf::Vector2i(175, 131);
+ body_item->thumbnail_url = "https://img.youtube.com/vi/" + recommended_item_id + "/mqdefault.jpg";
+ body_item->thumbnail_size = sf::Vector2i(192, 108);
body_items.push_back(std::move(body_item));
// We dont want more than 150 recommendations
@@ -765,7 +765,7 @@ namespace QuickMedia {
}
static void add_mangatown_handlers(MangaGenericSearchPage *manga_generic_search_page) {
- manga_generic_search_page->search_handler("https://mangatown.com/search?name=%s&page=%p", 1)
+ manga_generic_search_page->search_handler("https://www.mangatown.com/search?name=%s&page=%p", 1)
.text_handler({{"//p[class='title']/a", "title", "href", "/manga/"}})
.thumbnail_handler({{"//a[class='manga_cover']/img", "src", nullptr}})
.authors_handler({
@@ -1182,9 +1182,10 @@ namespace QuickMedia {
auto body_item = BodyItem::create(std::move(title_str));
body_item->url = "https://www.youtube.com/watch?v=" + video_id_str;
- body_item->thumbnail_url = "https://img.youtube.com/vi/" + video_id_str + "/hqdefault.jpg";
+ body_item->thumbnail_url = "https://img.youtube.com/vi/" + video_id_str + "/mqdefault.jpg";
body_item->set_description("Watched " + seconds_to_relative_time_str(time_now - timestamp.asInt64()));
- body_item->thumbnail_size = sf::Vector2i(175, 131);
+ body_item->set_description_color(sf::Color(179, 179, 179));
+ body_item->thumbnail_size = sf::Vector2i(192, 108);
body_items.push_back(std::move(body_item));
}
@@ -1458,12 +1459,20 @@ namespace QuickMedia {
auto selected_item = tabs[selected_tab].body->get_selected_shared();
if(!selected_item && !tabs[selected_tab].page->allow_submit_no_selection())
return;
+
+ hide_virtual_keyboard();
std::vector<Tab> new_tabs;
auto prev_selected_item = tabs[selected_tab].page->submit_body_item;
tabs[selected_tab].page->submit_body_item = selected_item;
- PluginResult submit_result = tabs[selected_tab].page->submit(selected_item ? selected_item->get_title() : search_text, selected_item ? selected_item->url : "", new_tabs);
- if(submit_result != PluginResult::OK) {
+ TaskResult submit_result = run_task_with_loading_screen([&tabs, selected_tab, &selected_item, &search_text, &new_tabs](){
+ PluginResult submit_result = tabs[selected_tab].page->submit(selected_item ? selected_item->get_title() : search_text, selected_item ? selected_item->url : "", new_tabs);
+ return submit_result == PluginResult::OK;
+ });
+
+ if(submit_result == TaskResult::CANCEL) {
+ return;
+ } else if(submit_result != TaskResult::TRUE) {
// TODO: Show the exact cause of error (get error message from curl).
show_notification("QuickMedia", std::string("Submit failed for page ") + tabs[selected_tab].page->get_title(), Urgency::CRITICAL);
return;
@@ -1502,8 +1511,6 @@ namespace QuickMedia {
tab.body->clear_cache();
}
- hide_virtual_keyboard();
-
if(tabs[selected_tab].page->allow_submit_no_selection()) {
page_loop(new_tabs, 0, after_submit_handler);
} else if(new_tabs.size() == 1 && new_tabs[0].page->get_type() == PageTypez::MANGA_IMAGES) {