Commit Graph
156 Commits
Author SHA1 Message Date
jpirnay 19bf17f478 Merge pull request #243 from jpirnay/fi-rebuildcovers
fix: rebuild covers
2026-05-19 13:49:26 +02:00
jpirnay 5fec0e0210 Default covers + optimisations 2026-05-19 12:34:54 +02:00
jpirnay d2f660ea64 Resync 2026-05-19 12:05:19 +02:00
jpirnay d793db7891 Merge branch 'fi-rebuildcovers' of https://github.com/jpirnay/crosspoint-reader into fi-rebuildcovers 2026-05-19 12:03:26 +02:00
jpirnay a1f187b139 Regenerate cover thumbnails if cachedir is empty 2026-05-19 12:02:25 +02:00
jpirnay e3dcd93516 Regenerate cover thumbnails if cachedir is empty 2026-05-19 11:53:00 +02:00
jpirnay 4c41f6a14a shrink HomeActivity cover cache from 48KB framebuffer to 16KB region (#2035) 2026-05-19 11:05:55 +02:00
jpirnay a3cef380a7 Refactor pendig thumbnails 2026-05-18 16:42:38 +02:00
jpirnay c642dc8454 yaclf 2026-05-16 21:09:53 +02:00
jpirnay 425bd47bcd Change subsection name 2026-05-16 12:25:04 +02:00
jpirnay a5fa7adcd7 Change mark as read behaviour 2026-05-16 12:11:00 +02:00
jpirnay 9bcc7b5e4f Add context menu to filebrowser 2026-05-16 09:21:49 +02:00
jpirnay 1a6ddc4eda Add info string to list 2026-05-15 21:07:58 +02:00
jpirnay 3ed5bc3673 Remove missing books from recent list 2026-05-15 19:22:58 +02:00
jpirnay e922b70744 Merge pull request #214 from jpirnay/feat-recentview
feat: Add 3x3 recent grid view
2026-05-14 18:29:05 +02:00
jpirnay 28416721b9 Fix 2026-05-14 17:10:10 +02:00
jpirnay 5c4d47376b Amend balck rect around image 2026-05-14 16:31:51 +02:00
jpirnay 3eeee72d23 Properly distinguish double / single clicks 2026-05-14 16:15:32 +02:00
jpirnay 8e5907ffc6 Proper sidecar precedence 2026-05-13 22:53:05 +02:00
jpirnay da9b3fe60d Add 3x3 grid view 2026-05-13 22:42:11 +02:00
jpirnay 776728d8e8 Consolidate cache directories 2026-05-13 22:10:13 +02:00
jpirnay c8c697da06 Add double and long clicks in lists 2026-05-13 14:00:07 +02:00
jpirnay f6d2b7442b Allow (empty) directory removal 2026-05-09 00:15:28 +02:00
jpirnay 79ef2eea91 Some fixes for cover generation 2026-05-08 18:04:41 +02:00
jpirnay 13e87ff470 Reduce memory need 2026-05-08 17:29:59 +02:00
jpirnay 98e7c14c16 Proper sidecar cover support 2026-05-08 16:09:39 +02:00
jpirnay 8a92edcea5 Add and refactor LyraCarouselTheme by zgredex 2026-05-08 09:36:12 +02:00
jpirnay 4005bf55e5 Add Lyra Carousel home theme 2026-05-07 23:42:35 +02:00
jpirnay a0aee0ba1b SD-card firmware update + X3 bootloader compatibility (#1786) 2026-05-07 19:38:12 +02:00
jpirnay 8cebf6e319 Fix button race 2026-05-02 23:38:19 +02:00
jpirnay 1f6ddddd59 Use new method to decide button press 2026-04-27 20:56:06 +02:00
jpirnay 1d8f03f757 Merge remote-tracking branch 'origin/master' into feat-autosync 2026-04-27 20:42:15 +02:00
jpirnayandCopilot 066ec3d56b Fixes
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 18:45:16 +02:00
jpirnayandCopilot aed297b2b1 First attempt
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 15:30:43 +02:00
jpirnay ea99b764ce Review changes 2026-04-27 14:38:20 +02:00
jpirnayandCopilot e1d623bd9c Refactor duplicate/stale button handler
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 13:42:39 +02:00
jpirnay 5b0a7743d1 Cache reader progress 2026-04-26 23:21:19 +02:00
Arthur TazhitdinovandCopilot c867669560 feat: Support for multiple OPDS servers (#1209)
* Add support for configuring and using multiple OPDS servers, replacing
the previous single-server limitation. Closes
https://github.com/crosspoint-reader/crosspoint-reader/issues/1178
* New OpdsServerStore singleton (modeled after WifiCredentialStore) that
persists up to 8 OPDS servers to /.crosspoint/opds.json with MAC-based
password obfuscation.
* One-time migration from legacy single-server fields in
CrossPointSettings to the new store on first boot.
* New OpdsServerListActivity for the device UI — works in two modes: a
settings list (add/edit/delete servers) and a picker (select which
server to browse). When only one server is configured, the picker is
skipped automatically.
* Renamed CalibreSettingsActivity → OpdsSettingsActivity for clarity. It
now edits individual OpdsServer entries (name, URL, username, password,
delete).
* OpdsBookBrowserActivity now receives an OpdsServer at construction and
uses its credentials for all fetches/downloads, and shows the server
name in the header.
* HttpDownloader::fetchUrl and downloadToFile accept optional per-call
username/password parameters instead of reading from global settings.
* REST API endpoints on CrossPointWebServer: GET /api/opds, POST
/api/opds, POST /api/opds/delete — passwords are never exposed over the
API (only a hasPassword flag), and omitting the password field on update
preserves the existing one.
* Web UI (SettingsPage.html) with dynamic OPDS server management cards —
add, edit, save, and delete servers from the browser.
<img width="932" height="906" alt="SCR-20260416-stvu"
src="https://github.com/user-attachments/assets/a8f18d84-4204-46a0-bb31-b73d24b3255f"
/>

* The OpdsServerStore JSON format and obfuscation scheme are identical
to WifiCredentialStore, so the same JsonSettingsIO infrastructure
handles both.
* The web API uses POST /api/opds/delete instead of DELETE /api/opds
because the ESP32 WebServer doesn't support the DELETE method with a
request body.
* Existing single-server configurations are migrated automatically — no
user action required. After migration the legacy CrossPointSettings
fields are cleared so it only runs once.
* The HttpDownloader changes are backward-compatible: the credential
parameters default to empty strings, so existing callers are unaffected.

---

While CrossPoint doesn't have restrictions on AI tools in contributing,
please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? _**< YES >**_

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-23 11:14:50 +02:00
jpirnay 3e28b45888 Fix according to comment 2026-04-17 21:05:30 +02:00
jpirnay e74e52b23a Review comments 2026-04-17 20:59:49 +02:00
jpirnay 6ca8de8329 Reduce debug logging 2026-04-17 20:43:36 +02:00
jpirnay b4881e1563 Refactor ActivityManager calls 2026-04-17 20:23:42 +02:00
jpirnay e0fb3e0160 More comments 2026-04-17 16:25:29 +02:00
jpirnay af018af03a style fixes 2026-04-17 15:59:58 +02:00
jpirnay 87b9d333f7 Review changes 2026-04-17 15:54:08 +02:00
jpirnay 2b17872c16 Refactor spaghetti code 2026-04-17 15:39:02 +02:00
jpirnay 052bd016a0 Change Labels for Webui 2026-04-16 16:53:18 +02:00
jpirnay 47b46a24b9 Use common activity pattern 2026-04-16 14:20:35 +02:00
jpirnay 84dbabc772 Remaining incompatibilities 2026-04-15 12:52:49 +02:00
jpirnay 8812d3fb0e use correct string 2026-04-15 10:44:20 +02:00