feat: support two-step OpenSearch Description for OPDS search
Servers like copyparty advertise search via a link to an OpenSearch
Description (OSD) document rather than embedding {searchTerms} directly
in the feed's <link rel="search"> href (the Calibre-Web style).
OpdsParser now stores the OSD URL when rel="search" and
type="application/opensearchdescription+xml" but the href lacks
{searchTerms}. OpdsBookBrowserActivity fetches that OSD document after
each feed load and parses the <Url template="..."> element with a
minimal inline expat parser to extract the actual search template.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
committed by
jpirnay
co-authored by
Claude Sonnet 4.6
parent
bd43221ad9
commit
b47e5b5fff
@@ -46,6 +46,7 @@ class OpdsBookBrowserActivity final : public Activity {
|
||||
void navigateToEntry(const OpdsEntry& entry);
|
||||
void navigateBack();
|
||||
void downloadBook(const OpdsEntry& book);
|
||||
void fetchOsdTemplate(const std::string& osdUrl);
|
||||
void launchSearch();
|
||||
void performSearch(const std::string& query);
|
||||
bool preventAutoSleep() override { return true; }
|
||||
|
||||
Reference in New Issue
Block a user