Commit Graph
113 Commits
Author SHA1 Message Date
jpirnay 776728d8e8 Consolidate cache directories 2026-05-13 22:10:13 +02:00
jpirnay d6fd744b3c Font Manager overhaul 2026-05-13 12:39:24 +02:00
jpirnay 2b1dbb6737 Add extended TiltModel 2026-05-11 16:29:40 +02:00
jpirnay 9cd732bfd8 Amend error code 2026-05-08 23:37:03 +02:00
Joel Goguen 3a612df4b5 feat: Allow OTA update to beta releases 2026-05-07 23:29:15 -04:00
jpirnay a0aee0ba1b SD-card firmware update + X3 bootloader compatibility (#1786) 2026-05-07 19:38:12 +02:00
jpirnay 444be74249 Review comments 2026-05-04 13:59:28 +02:00
jpirnay 4c936853b9 Fix webui font download 2026-05-04 13:17:02 +02:00
jpirnayandCopilot 3df8ce56de Font Manager Update
Co-authored-by: Copilot <copilot@github.com>
2026-05-04 00:34:17 +02:00
jpirnay 5617db3ad2 Fix font-location 2026-05-03 22:42:54 +02:00
jpirnay 5970f8b136 yaclf 2026-05-02 23:41:01 +02:00
jpirnay ab8e7ef108 Review induced changes 2026-05-02 23:14:35 +02:00
jpirnay e83c5ed80d Update 2026-05-02 23:10:57 +02:00
jpirnay 5b863cc794 yaclf 2026-05-02 23:00:41 +02:00
jpirnayandCopilot 40008799cf Add download feature to fonts page
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 22:53:22 +02:00
jpirnayandCopilot cc9ff5bae9 More review changes
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 18:42:45 +02:00
jpirnayandCopilot 06dfc6c50b Recover parts of the regression fiasco
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 18:19:23 +02:00
jpirnayandCopilot a5469c0bb9 Review comments
Co-authored-by: Copilot <copilot@github.com>
2026-05-02 17:22:10 +02:00
jpirnay df94ccaa86 Recover from merge fiasco 2026-05-02 16:54:31 +02:00
jpirnay 6df7418e58 Merge pull request #151 from jgoguen/ota-boot-fix
fix(ota): Correctly select the partition to write to
2026-04-29 09:15:53 +02:00
Joel Goguen d148f7290d fix(ota): Correctly select the partition to write to
There was an off-by-one error selecting the new partition, meaning the OTA
update would write to the second partition but the boot would be set to the same
one we're currently in.

I believe this should fix jpirnay/crosspoint-reader#112
2026-04-28 21:26:52 -04:00
Joel Goguen af58db7314 refactor(network): Stream parse JSON response from GitHub
While working on enabling OTA for beta updates I kept running into memory issues with the JSON from GitHub. This improves the situation even for the stable OTA releases so I'm putting it up on its own.
2026-04-28 20:20:48 -04:00
jpirnay aa9fae16d9 Integrate upstream #1392 by adriancaruana 2026-04-28 10:00:22 +02:00
jpirnay c1e51ac8a2 edit wifi networks in webui (upstream #1743 by osteotek) 2026-04-25 12:10:38 +02:00
jpirnay 4346292340 Add additional file indicators 2026-04-23 22:21:43 +02:00
jpirnay 6053ef4756 Review comments 2026-04-23 17:08:08 +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 8ff8418441 pluralize folder/file counts correctly in file list summary (#1701) 2026-04-23 09:30:50 +02:00
jpirnay 4981086a1d Update html title strings according to #1703 2026-04-23 09:29:28 +02:00
jpirnay 7da8b335ab Review comments 2026-04-21 22:16:23 +02:00
jpirnay f6f18dcf15 Write directly 2026-04-21 18:27:59 +02:00
jpirnay df171560db Fix firmware download 2026-04-21 17:16:19 +02:00
jpirnay d4c475470b Allow cancellation of download, dont block the device 2026-04-21 14:26:21 +02:00
jpirnay 425c1db132 Review comments 2026-04-20 21:16:31 +02:00
jpirnay a6aed8d30e Add additional timezones 2026-04-20 20:40:38 +02:00
jpirnay ab9d47aac9 Review comments 2026-04-20 10:12:20 +02:00
jpirnay 26fb4d3b5a Cosmetic + sorting 2026-04-20 09:05:02 +02:00
jpirnay c8a02a8daa Folder move, multiple items move 2026-04-20 08:44:43 +02:00
jpirnay 3b8b389408 Refactor Settings usage 2026-04-17 15:38:37 +02:00
jpirnay 3f1b9d0964 Refactor visual appearance of SystemInformation 2026-04-16 11:57:40 +02:00
jpirnay 87505023a0 Add file drop support 2026-04-14 13:00:18 +02:00
jpirnay c6adce7fad Acknowledge http redirects during OTA (partial adaption of PR 1336) 2026-04-11 20:40:52 +02:00
jpirnay bfeb806a0b Review changes 2026-04-11 09:43:48 +02:00
jpirnay d37621574c Redesign web server to avoid lengthy system stats retrieval 2026-04-11 08:28:06 +02:00
jpirnay ae00ce9f81 No race condition on fetch sd status 2026-04-09 14:13:53 +02:00
jpirnay 32d44eb158 Review changes 2026-04-09 13:33:20 +02:00
jpirnay 82a32f9f46 Show SD-card info only if requested 2026-04-09 12:58:19 +02:00
jpirnay 0b0e04b9fa Allow renaming and moving folders in web file manager (PR #1617 by alkk) 2026-04-08 19:41:52 +02:00
jpirnay 809e84f758 Update OTA url 2026-04-07 22:18:15 +02:00
jpirnay c0797b385a Show file extensions in browser (user option) 2026-04-06 19:34:08 +02:00