Commit Graph
857 Commits
Author SHA1 Message Date
jpirnay 1af3f81336 PR 1507 2026-03-26 11:05:13 +01:00
jpirnay ac42d5ef36 Merge branch 'refactor-i18n_offset-table' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-26 11:02:18 +01:00
jpirnay f8374bb66b Merge branch 'chore-portugues' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-26 11:02:03 +01:00
jpirnay 86c935bfc9 Fix codes 2026-03-26 10:43:37 +01:00
jpirnay 5da520eb9e Clean up language codes 2026-03-26 10:42:15 +01:00
jpirnay 3f5a2663f6 Exit if non-unique identifiers found 2026-03-26 10:30:14 +01:00
jpirnay 64b8c71799 Fix non-unique ids 2026-03-26 09:22:21 +01:00
jpirnay 483da0af66 Merge branch 'chore-portugues' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 22:20:58 +01:00
jpirnay deb0199c86 Fix wrong language code for ptbr and introduced ptPt 2026-03-25 22:14:38 +01:00
jpirnay 5745e598e3 fix: migrate KOSync registerUser to esp_http_client 2026-03-25 20:22:01 +01:00
trilwu 08739746f8 style: fix clang-format alignment and log allocation failure
Address CI clang-format check and CodeRabbit review feedback:
- Fix parameter alignment (one extra space)
- Log warning when response buffer allocation fails

(cherry picked from commit 3900ea1feb017c07bd5e38da0b471fe623ec506e)
2026-03-25 20:19:46 +01:00
trilwu 10ea651e26 fix: use esp_http_client for KOSync to prevent TLS OOM on ESP32-C3
The Arduino WiFiClientSecure allocates 16KB TLS buffers by default,
which exhausts the ESP32-C3's limited heap (~46KB free after WiFi)
during the TLS handshake. This causes KOReader sync to fail silently
or crash on HTTPS servers (including the default sync.koreader.rocks).

Replace WiFiClientSecure/HTTPClient with esp_http_client (ESP-IDF),
which supports configurable buffer sizes. Use 2KB TLS buffers — more
than sufficient for KOSync's tiny JSON payloads (<1KB).

Also:
- Use esp_crt_bundle for proper TLS certificate verification instead
  of setInsecure()
- Strip trailing slashes from server URL to prevent double-slash in
  API paths
- Add lastHttpCode for diagnostics
- Add heap logging to help debug memory issues

Fixes #581

(cherry picked from commit 835abc19ff14fcbea8571ccb0dfd8d21e882b84c)
2026-03-25 20:19:46 +01:00
nscheung d88ec2ca24 Remove return statement
(cherry picked from commit c5caea7d3323c63ff0322c647e45ee48e7a4fbf6)
2026-03-25 20:16:47 +01:00
nscheung d8334e9fa4 Adjust navigation at end of book to home page on forward press
(cherry picked from commit deb6ff3b9d1a284594540513f19a3191936915c9)
2026-03-25 20:16:47 +01:00
jpirnay 6be2627b59 Merge branch 'feat-remove-from-recents' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 19:55:39 +01:00
jpirnay 4abfc06380 Fix regression 2026-03-25 19:55:13 +01:00
jpirnay a5fa684d2b Merge branch 'perf-lut-cache' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 18:09:53 +01:00
jpirnay 36b471891d Merge branch 'fix-xtc-2gb' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 18:08:34 +01:00
jpirnay 96aaeec792 Merge branch 'fix-http-empty' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 18:08:16 +01:00
jpirnay 61e5b01eee Deal with zero byte downloads 2026-03-25 17:59:37 +01:00
jpirnay afe0b82228 Cover remaining seeks 2026-03-25 17:53:18 +01:00
jpirnay 7d43c876a4 Remove 2GB limit for XTC files 2026-03-25 17:35:19 +01:00
jpirnayandClaude Opus 4.6 7496bf95ce Merge branch 'master' of origin into perf-lut-cache
Resolved conflicts in Section.h and Section.cpp:
- Combined includes (vector for LUT cache + optional/string from master)
- Added imageRendering parameter to loadSectionFile declaration
- Kept non-const clearCache (needs to close file handle for LUT cache)
- Kept in-memory LUT cache in loadPageFromSectionFile (replaces master's
  per-page LUT seek)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-25 17:17:51 +01:00
jpirnay e30fa6eb3a Merge branch 'perf-ws-upload-speed' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 13:07:32 +01:00
jpirnay 4c478c73b7 Adjust progress bar 2026-03-25 13:03:10 +01:00
jpirnay e87f8035be Increase upload speed 2026-03-25 12:10:00 +01:00
jpirnay f80e2ecea3 Merge branch 'master' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-25 10:40:08 +01:00
Baris AlbayrakandBarış Albayrak 1b00fe5a9a chore: Turkish localization for STR_SHOW_HIDDEN_FILES (#1487)
Adds the missing Turkish translation for STR_SHOW_HIDDEN_FILES in
lib/I18n/translations/turkish.yaml.

- Added: STR_SHOW_HIDDEN_FILES: "Gizli Dosyaları Göster"
- Scope: Turkish only (single-key micro-fix)

This follows up the missing-translations callout in #1483.

Co-authored-by: Barış Albayrak <barisa@pop-os.lan>
2026-03-25 08:29:03 +02:00
Dani Poveda 4ca447edcb chore: Spanish localization for STR_SHOW_HIDDEN_FILES (#1486)
## Summary

* Adding Spanish translation for string `STR_SHOW_HIDDEN_FILES`

---

### AI Usage

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? _**NO**_
2026-03-25 08:25:55 +02:00
jpirnay b48dffa38d feat: Make directories stand out more in local file browser: "[dir]" instead of "dir" (#1339)
## Summary

* **What is the goal of this PR?** It's difficult to distinguish
directory names from normal file entries, so they are displayed now as
"[dir]" instead of "dir" for classic theme
* **What changes are included?**

## Additional Context

* Add any other information that might be helpful for the reviewer
(e.g., performance implications, potential risks,
  specific areas to focus on).

---

### AI Usage

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? _**NO**_
2026-03-24 19:47:42 -05:00
jpirnay f87aec499e Merge branch 'master' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-24 09:15:47 +01:00
jpirnay ee1015173b chore: Add powershell script for clang-formatting (#1472)
## Summary

* **What is the goal of this PR?** Add a windows equivalent for the
linux clang-format-fix script
* **What changes are included?**

## Additional Context
```
.SYNOPSIS
    Runs clang-format -i on project *.cpp and *.h files.

.DESCRIPTION
    Formats all C/C++ source and header files in the repository, excluding
    generated, vendored, and build directories (open-x4-sdk, builtinFonts,
    hyphenation tries, uzlib, .pio, *.generated.h).

    The clang-format binary path is resolved once and cached in
    .local/clang-format-fix.local. On first run it checks a default path,
    then PATH, then common install locations. Edit the .local file to
    override manually.

.PARAMETER g
    Format only git-modified files (git diff --name-only HEAD) instead of
    the full tree.

.PARAMETER h
    Show this help text.
```
---

### AI Usage

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 >**_
2026-03-23 18:04:59 -05:00
Zach Nelson 44d7a15b12 fix: Overlapping battery percentage on image pages with anti-aliasing (#1452)
## Summary

**What is the goal of this PR?**

When viewing a page with images and anti-aliasing enabled, the
`imagePageWithAA` path renders the page twice with fast refreshes (blank
image area, then restore). Both passes called `renderStatusBar()`, which
reads the battery percentage live. If the value changed between the two
renders (e.g. 88% -> 87%), the digits would overlap on screen.
Fix: Removed the redundant `renderStatusBar()` from the second BW
render. The status bar is already drawn and displayed in the first pass,
and only the image area needs restoration.

---

### AI Usage

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? _**NO**_
2026-03-23 22:05:15 +00:00
jpirnay 2460a96132 flatten logic 2026-03-23 21:43:23 +01:00
jpirnay cc46225f22 Merge branch 'feat-remove-from-recents' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-23 21:43:06 +01:00
jpirnay 7ad9d6cf14 Hide buttons when empty 2026-03-23 21:37:49 +01:00
jpirnay dc6074225c Use proper term 2026-03-23 21:30:22 +01:00
jpirnay eec42c0dd3 Only on left 2026-03-23 21:28:21 +01:00
jpirnay d53f8caeb4 clangf 2026-03-23 21:22:27 +01:00
jpirnay 251c341c06 Merge branch 'feat-remove-from-recents' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-23 21:20:27 +01:00
jpirnay 5d8486ea07 Use previous button for removal of active entry in recent books 2026-03-23 21:16:49 +01:00
jpirnay eadcead501 fix: Fix img layout issue / support CSS display:none for elements and images (#1443)
## Summary
- Add CSS `display: none` support to the EPUB rendering pipeline (fixes
#1431)
- Parse `display` property in stylesheets and inline styles, with full
cascade resolution (element, class, element.class, inline)
- Skip hidden elements and all their descendants in
`ChapterHtmlSlimParser`
- Separate display:none check for `<img>` tags (image code path is
independent of the general element handler)
- Flush pending text blocks before placing images to fix layout ordering
(text preceding an image now correctly renders above it)
- Bump CSS cache version to 4 to invalidate stale caches
- Add test EPUB (`test_display_none.epub`) covering class selectors,
element selectors, combined selectors, inline styles, nested hidden
content, hidden images, style priority/override, and realistic use cases
2026-03-23 13:51:02 -05:00
jpirnay 2b1cdcd85e yaclf 2026-03-23 18:45:25 +01:00
jpirnay 3c4dd90bc1 Merge branch 'feat-kosync-onlongpress' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-23 13:31:19 +01:00
jpirnay b4dfd168ba Nitpick comments 2026-03-23 13:29:52 +01:00
jpirnay af76dbb02b yaclf 2026-03-23 13:26:48 +01:00
jpirnay e0ee59cbdf Merge branch 'feat-kosync-onlongpress' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-23 12:42:23 +01:00
jpirnay 75350b0a3e Incorporate koreader registration 2026-03-23 12:35:01 +01:00
jpirnay 68bf80e6b9 Suppress sync menu entry if no credentials are defined 2026-03-23 12:26:18 +01:00
jpirnay ad6036c162 regular menu action if no koreader credentials are defined 2026-03-23 12:23:21 +01:00