Commit Graph
241 Commits
Author SHA1 Message Date
jpirnay ad7789f53d Introduce toc caching 2026-04-27 11:19:42 +02:00
jpirnay dbd2ce8541 Merge pull request #131 from jpirnay/fix-css-text-indent
feat: Honor css defined paragraph intent (and clamp it if necessary)
2026-04-25 11:28:40 +02:00
jpirnay 81a784985e yaclf 2026-04-25 11:19:39 +02:00
jpirnayandCopilot 12372aaafc Clamp indent to page dimensions
Co-authored-by: Copilot <copilot@github.com>
2026-04-25 11:19:04 +02:00
jpirnay c8a2332ed3 Add recommendation 2026-04-25 11:14:21 +02:00
jpirnay 6060607bda Eliminate tmp file creation 2026-04-25 10:54:32 +02:00
jpirnay be6b7fa0c6 Finer granularity of popup methods 2026-04-25 10:32:49 +02:00
jpirnay 920a9e035c Reduce popup progress frequency 2026-04-25 10:24:04 +02:00
jpirnay 17ea700538 Honor css defined paragraph intent 2026-04-25 09:17:26 +02:00
jpirnay 37395f8e0f Final review 2026-04-24 19:42:18 +02:00
jpirnay 7291ccacc8 Further code review 2026-04-24 16:23:14 +02:00
jpirnay c4498cd535 Merge branch 'master' of https://github.com/jpirnay/crosspoint-reader into feat-rendering-perf 2026-04-24 15:47:47 +02:00
jpirnay e0e3bd4251 Fix reindexing on toc-page-break 2026-04-23 13:15:30 +02:00
jpirnay 700d7b442b fix: Erroneous navigation with long filenames in footnote links (#1723) 2026-04-23 09:39:58 +02:00
jpirnayandClaude Sonnet 4.6 e4170e2272 Font rendering performance improvements
- FontDecompressor: replace heap-allocated std::vector hot-group and glyph
  scratch buffers with static BSS arrays, eliminating per-page malloc/free
  and the heap fragmentation it causes during rendering
- FontDecompressor: add bounds checks on group/glyph buffer sizes; sort
  prewarm group list by ascending index for sequential flash reads
- ParsedText: upgrade line-break cost function to Knuth-Plass cubic badness
  (strongly penalises very loose lines, lenient on moderate looseness)
- ParsedText: exclude gaps before closing punctuation (. , ) » etc.) from
  justification distribution so they stay at natural space width

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 07:33:39 +02:00
jpirnay 83fe041a6b Merge pull request #109 from jpirnay/kosync_extension
refactor: Picking up some itsthisjustin ideas for KOreader synchronisation
2026-04-20 14:21:31 +02:00
jpirnay 440d64e48e Nitpick comments 2026-04-20 14:16:13 +02:00
jpirnay 29284c85c9 Review comments 2026-04-20 13:28:56 +02:00
jpirnay 3fb9ac9e29 Finetuning 2 2026-04-20 13:15:05 +02:00
jpirnay 5e4f78f7be Finetuning 2026-04-20 12:28:00 +02:00
Joel Goguen 828999cae3 fix: free parser on error
Found while looking into #105 but the opposite problem. This frees the parser after an error has occurred and early return.
2026-04-19 22:27:34 -04:00
jpirnay d6292920d9 Picking up some itsthisjutin ideas 2026-04-19 19:03:43 +02:00
jpirnay a5dd44b3e0 Implement fix for footnote links (PR 1666 by steka) 2026-04-15 16:35:19 +02:00
jpirnay 5e08794706 Adapt upstream PR 1638 -use deque to increase usable epub size 2026-04-11 20:48:48 +02:00
jpirnay 155f0c77ac Fix oversight 2026-04-11 20:29:57 +02:00
jpirnay 8add255bc3 Add some linter comments 2026-04-11 19:44:40 +02:00
jpirnay 27f8506536 Fix endless loop in ParsedText::getText() - fixing issue #51 2026-04-11 19:29:47 +02:00
jpirnay 817187a415 Partial fixes from upstream #1607 2026-04-09 13:54:56 +02:00
Zach Nelson 93f285d296 refactor: Use default member initializers for JpegContext and PngContext (#1435)
**What is the goal of this PR?**

Replace verbose constructor initializer lists with in-class default
member initializers in JpegContext and PngContext

---

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-04-08 10:44:10 +02:00
jpirnay 66508258d3 Extended bitmap viewer by option to togglie between grayscale and bw mode 2026-04-08 09:37:08 +02:00
jpirnay 7168c46dec Minor fixes 2026-04-07 23:28:51 +02:00
jpirnay e035d698ed Align png rendering to upstream 2026-04-07 23:07:06 +02:00
jpirnay 4d4729c5d0 Add minimal changes back from reverted ones 2026-04-07 21:56:31 +02:00
jpirnay abbf69649e Revert "Merge pull request #25 from jpirnay/fix-pr1582" and refactor koreader 2026-04-07 20:24:51 +02:00
jpirnay 7e37f3252c Review comments 2026-04-06 18:03:50 +02:00
jpirnay 4f031b00b1 (Conditionally) add further dithering algorithms 2026-04-06 17:23:29 +02:00
jpirnay eb95cacad4 Add dithering algorithms 2026-04-06 13:00:27 +02:00
jpirnay ef0d044f9e Only deal with horizontal stacking 2026-04-06 11:49:36 +02:00
jpirnay f78ecd37c9 Adapt upstream PR1582 by daveallie 2026-04-06 11:17:32 +02:00
jpirnay c72bd56560 Merge pull request #19 from jpirnay/feat-hyphen-page-break
feat: No hyphenation across page breaks
2026-04-05 11:29:58 +02:00
Justin Mitchell 17ed71f23d Use runtime display dimensions instead of constants
Replace hardcoded DISPLAY_WIDTH, DISPLAY_HEIGHT, and DISPLAY_WIDTH_BYTES constants with runtime values from display object to support multiple device models (X3 and X4) with different screen dimensions.
2026-04-05 11:22:00 +02:00
jpirnay 65474d4066 Fix alignment issues 2026-04-05 11:18:19 +02:00
jpirnay 01503f9c84 Fix reflow logic 2026-04-05 11:01:40 +02:00
jpirnay 1509af8729 Avoid hypehnation at page breaks 2026-04-05 10:47:05 +02:00
jpirnay 7e2291915f Merge branch 'x3-support'
# Conflicts:
#	lib/GfxRenderer/GfxRenderer.h
#	open-x4-sdk
2026-04-04 10:05:14 +02:00
Justin Mitchell 0db9d93f1c feat: add Xteink X3 hardware support
Adds HAL-level support for the Xteink X3 (SSD1677 controller, 792x528
display). Includes device detection, display initialization, button
mapping, power management, and theme adjustments for the X3 form factor.
2026-04-03 04:04:17 -04:00
jpirnay bddefa58f5 Fix image margin leak 2026-04-02 13:39:24 +02:00
jpirnay e1fd631ced Review implied changes 2026-04-01 11:14:53 +02:00
jpirnay 3f6d31b966 Merge branch 'feat-ordered-list' of https://github.com/jpirnay/crosspoint-reader into mybuild 2026-03-31 21:26:05 +02:00
jpirnay 913831749e Slight adjustments 2026-03-31 21:17:32 +02:00