Commit Graph
72 Commits
Author SHA1 Message Date
Jonas Diemer bf4a8da0e6 Wrap-around navigation in Settings. (#31) 2025-12-16 22:54:16 +11:00
Arthur Tazhitdinov fabea7ad41 Add Cyrillic range to fonts (#27)
* Enhance TOC parsing and chapter selection logic

- Update .gitignore to include additional paths
- Refactor Epub::parseContentOpf to improve NCX item retrieval
- Modify ContentOpfParser to store media type in ManifestItem
- Implement rebuildVisibleSpineIndices in EpubReaderChapterSelectionScreen for better chapter navigation
- Adjust rendering logic to handle empty chapter lists gracefully

* Refactor TOC parsing logic to streamline cover image and NCX item retrieval

* add cyrillic ranges

* revert

* clang format fix
2025-12-16 22:52:49 +11:00
Jonas Diemer fc2d526e40 Feature/auto poweroff (#32)
* Automatically deep sleep after 10 minutes of inactivity.

* formatting.
2025-12-16 22:49:31 +11:00
Dave Allie 9f7b00c2a5 Parse cover image path from content.opf file (#24) 2025-12-16 03:15:54 +11:00
Dave Allie 5f150d3024 Fixed light gray text rendering 2025-12-16 02:16:38 +11:00
Dave Allie 484af45b83 Run CI action on PR as well as push 2025-12-15 23:17:35 +11:00
Dave Allie 3303541e15 Fix formatting 2025-12-15 23:17:23 +11:00
Jonas Diemer a10d903a9f Settings Screen and first 2 settings (#18)
* white sleep screen

* quicker pwr button

* no extra spacing between paragraphs

* Added settings class with de/serialization and whiteSleepScreen setting to control inverting the sleep screen

* Added Settings screen for real, made settings a global singleton

* Added setting for extra paragraph spacing.

* fixed typo

* Rework after feedback

* Fixed type from bool to uint8
2025-12-15 23:16:46 +11:00
Dave Allie 5dc00b55aa Upgrade open-x4-sdk to fix white streaks on sleep screen (#21)
https://github.com/open-x4-epaper/community-sdk/pull/6 fixes a power down issue with the display which was causing streaks to appear on the sleep screen
2025-12-15 22:27:27 +11:00
Dave Allie c53c783524 Add Github Action to build release firmware on tag (#20) 2025-12-15 20:00:34 +11:00
Dave Allie 89fc8f1dc0 Add cppcheck and formatter to CI (#19)
* Add cppcheck and formatter to CI

* Checkout submodules

* Install matching clang-format version in CI
2025-12-15 19:46:52 +11:00
Dave Allie 8787b15bf4 Add Github templates
Added Github templates for PRs and bugs
Also added one for funding, please do not feel obligated to
donate to the project, this is not a for-profit endevour, I
just had someone ask where they could send a few dollars so
I have set it up
2025-12-15 08:16:59 +11:00
Dave Allie 458657c118 Add comparison images 2025-12-14 13:46:15 +11:00
Dave Allie 09aa1f4f2a Update contribution instructions 2025-12-14 13:46:03 +11:00
Dave Allie 6f32caab6c Cut release 0.5.1 2025-12-13 21:52:48 +11:00
Dave Allie 7d643b7739 Add user guide 2025-12-13 21:52:03 +11:00
Dave Allie c90f3d8304 Add chapter selection screen 2025-12-13 21:17:34 +11:00
Dave Allie 8175069ea7 Return -1 from getTocIndexForSpineIndex if TOC item does not exist 2025-12-13 21:17:22 +11:00
Dave Allie e68e4b41ed Cut release 0.5.0 2025-12-13 20:16:12 +11:00
Dave Allie 7eea0eeccb Show end of book screen when navigating past last page 2025-12-13 20:10:38 +11:00
Dave Allie 114c8b3a43 Process lines into pages as they are built 2025-12-13 20:10:16 +11:00
Dave Allie fe831c615c Remove tinyxml2 dependency replace with expat parsers (#9) 2025-12-13 19:36:01 +11:00
Dave Allie 2edc6ed15a Cut release 0.4.0 2025-12-13 17:15:06 +11:00
Dave Allie 33e1499175 Show clearer indexing string 2025-12-13 16:02:27 +11:00
Dave Allie 11857183cc Bump page file version 2025-12-13 00:42:17 +11:00
Dave Allie 779f3b07e2 Swap out babyblue font for pixelarial14 2025-12-13 00:16:10 +11:00
Dave Allie f74c0d23a9 Move to smart pointers and split out ParsedText class (#6)
* Move to smart pointers and split out ParsedText class

* Cleanup ParsedText

* Fix clearCache functions and clear section cache if page load fails

* Bump Page and Section file versions

* Combine removeDir implementations in Epub

* Adjust screen margins
2025-12-12 22:13:34 +11:00
Dave Allie 0440576093 Restructure readme 2025-12-09 00:07:38 +11:00
Dave Allie 0b888a6502 Add section in readme on flashing via xteink.dve.al 2025-12-09 00:04:55 +11:00
Dave Allie ea75ba5412 Cut release 0.3.0 2025-12-08 23:55:05 +11:00
Dave Allie 61c50be7db Add version string to boot screen 2025-12-08 23:13:33 +11:00
Dave Allie a98a2808b8 Add drawCenteredText to GfxRenderer 2025-12-08 22:52:19 +11:00
Dave Allie 797ddaab86 Cleanup serial output 2025-12-08 22:39:23 +11:00
Dave Allie 0800e8a845 Remove EpdRenderer and create new GfxRenderer 2025-12-08 22:06:09 +11:00
Dave Allie c239cbbd89 Move to SDK EInkDisplay and enable anti-aliased 2-bit text (#5)
* First pass at moving to SDK EInkDisplay library

* Add 2-bit grayscale text and anti-aliased rendering of text

* Render status bar for empty chapters

* Refresh screen every 15 pages to avoid ghosting

* Simplify boot and sleep screens

* Give FileSelectionScreen task more stack memory

* Move text around slightly on Boot and Sleep screens

* Re-use existing buffer and write to whole screen for 'partial update'
2025-12-08 19:48:49 +11:00
Dave Allie d2d39427af Stream inflated EPUB HTMLs down to disk instead of inflating in memory (#4)
* Downgrade miniz for stability

* Stream HTML from ZIP down to disk instead of loading all in mem
2025-12-08 00:39:17 +11:00
Dave Allie e922758913 Sort directories first in file picker 2025-12-07 19:17:43 +11:00
Dave Allie 1477520db8 Fix 1-bit font pixel alignment of last byte 2025-12-07 12:25:10 +11:00
Dave Allie f6a7f8fe18 Build and use 1-bit font, saves a good amount of space 2025-12-07 01:26:49 +11:00
Dave Allie 6b3fbed01b Reduce number of full screen refreshes to once every 20 pages 2025-12-06 22:12:01 +11:00
Dave Allie 5a23d72724 Version section bin files 2025-12-06 22:09:25 +11:00
Dave Allie 6da028c703 Add expat and swap out EPUB HTML parser (#2)
* Add expat and swap out ERB HTML parser

* Increase EpubHtmlParserSlim file buffer to 1024 bytes

* Cleanup TextBlock functions

* Do not break words when leaving spans
2025-12-06 20:57:24 +11:00
Dave Allie 6fe291f96c Small cleanup 2025-12-06 20:24:24 +11:00
Dave Allie 1cbee2cb92 More pass by reference changes 2025-12-06 15:56:00 +11:00
Dave Allie 5b2177149f Add image to README 2025-12-06 13:32:09 +11:00
Dave Allie 4c13528cfc Sort items on FileSelectionScreen 2025-12-06 13:01:16 +11:00
Dave Allie b89609691b Fix bug with selectin epubs inside of folders 2025-12-06 12:57:17 +11:00
Dave Allie 00fd1a033a Use reference passing for EpdRenderer 2025-12-06 12:56:39 +11:00
Dave Allie 283051d77f Use InputManager from community-sdk 2025-12-06 12:35:41 +11:00
Dave Allie 1a2572d981 Update README.md with checkout instructions
Fixes https://github.com/daveallie/crosspoint-reader/issues/1
2025-12-06 04:53:58 +11:00