feat(reader): import Foliate annotations on book open (Linux only), closes #2180 (#3574)

* feat(reader): import Foliate annotations on book open (Linux only), closes #2180

Automatically imports annotations, bookmarks, and reading progress from
Foliate's data files when opening a book on Linux. Uses foliateImportedAt
flag to prevent re-importing on subsequent opens.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor(annotation): move Foliate import into annotation provider pattern

Restructure annotation import as a multi-provider service following the
translators pattern. Foliate becomes a provider under
services/annotation/providers/, making it easy to add more import sources.
Each provider controls its own availability check and skip-if-imported guard.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Huang Xin 2026-03-21 12:04:46 +08:00 committed by GitHub
parent 7445d5befe
commit 0e8605d298
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 565 additions and 6 deletions

View file

@ -80,6 +80,9 @@
{
"path": "**/Readest/**/*"
},
{
"path": "**/com.github.johnfactotum.Foliate/**/*"
},
{
"path": "**/last-book-cover.png"
}