diff options
Diffstat (limited to 'src/plugins/MangaCombined.cpp')
-rw-r--r-- | src/plugins/MangaCombined.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/plugins/MangaCombined.cpp b/src/plugins/MangaCombined.cpp index bc4043f..fca5705 100644 --- a/src/plugins/MangaCombined.cpp +++ b/src/plugins/MangaCombined.cpp @@ -4,7 +4,7 @@ namespace QuickMedia { static const int SEARCH_TIMEOUT_MILLISECONDS = 5000; MangaCombinedSearchPage::MangaCombinedSearchPage(Program *program, std::vector<MangaPlugin> search_pages) : - Page(program), search_pages(std::move(search_pages)) + LazyFetchPage(program), search_pages(std::move(search_pages)) { } @@ -125,6 +125,19 @@ namespace QuickMedia { return page->submit(args, result_tabs); } + PluginResult MangaCombinedSearchPage::lazy_fetch(BodyItems&) { + for(MangaPlugin &manga_plugin : search_pages) { + if(manga_plugin.local_manga) { + LazyFetchPage *lazy_fetch_page = dynamic_cast<LazyFetchPage*>(manga_plugin.page.get()); + if(lazy_fetch_page) { + BodyItems dummy_body_items; + lazy_fetch_page->lazy_fetch(dummy_body_items); + } + } + } + return PluginResult::OK; + } + void MangaCombinedSearchPage::cancel_operation() { for(auto &search_thread : search_threads) { search_thread.second.cancel(); |