jpirnay and Copilot
12372aaafc
Clamp indent to page dimensions
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-25 11:19:04 +02:00
jpirnay
17ea700538
Honor css defined paragraph intent
2026-04-25 09:17:26 +02:00
jpirnay
88855d0258
Merge pull request #120 from jpirnay/feat-rendering-perf
...
refactor: Font rendering performance improvements
2026-04-24 19:50:11 +02:00
jpirnay
37395f8e0f
Final review
2026-04-24 19:42:18 +02:00
jpirnay
a73836c594
cppcheck complains
2026-04-24 18:08:37 +02:00
jpirnay
76bed0b381
Amend stats
2026-04-24 17:27:50 +02:00
jpirnay
73eee418e0
Merge branch 'master' of https://github.com/jpirnay/crosspoint-reader into feat-rendering-perf
2026-04-24 17:22:10 +02:00
jpirnay
646001a672
Add benchmark
2026-04-24 17:08:53 +02:00
jpirnay
6f31202332
Minor adjustment
2026-04-24 16:37:39 +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
4cc8bcbddd
Merge pull request #130 from jpirnay/fix-kosync-upload
...
fix: Reestablish 1.37 kosync upload behaviour
2026-04-24 15:47:05 +02:00
jpirnay
7c15c8aa85
Reestablish 1.37 upload behaviour
2026-04-24 15:35:56 +02:00
jpirnay
ea2c0f77c8
Merge pull request #128 from jpirnay/feat-fontoverride
...
feat: Add font foverrides to reader menu
2026-04-24 15:02:30 +02:00
jpirnay
4cfd031cab
And even more
2026-04-24 14:48:12 +02:00
jpirnay
5068817549
review induced changes
2026-04-24 14:25:11 +02:00
jpirnay
9a72409826
Fixing submenus
2026-04-24 14:17:50 +02:00
jpirnay
ec36670485
Show default values
2026-04-24 12:54:17 +02:00
jpirnay
751f523295
Cluster tools section
2026-04-24 12:50:47 +02:00
jpirnay
0c080f5600
Refactor submenu creation logic
2026-04-24 12:44:08 +02:00
jpirnay and Copilot
7533ed1a9c
Add font foverrides to reader menu
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-24 11:38:55 +02:00
jpirnay
e87cdf22ce
Merge pull request #127 from jpirnay/feat-imagerefresh
...
fix: Autorefresh after image pages to get rid of ghosting artifacts (#116 )
2026-04-24 10:47:17 +02:00
jpirnay
0b1599a5eb
Honor local image display setting
2026-04-24 10:40:29 +02:00
jpirnay
1bf0278eec
Autorefresh after image pages to get rid of ghosting artifacts ( #116 )
2026-04-24 10:30:07 +02:00
jpirnay
5d0620bc3a
Change content type
2026-04-23 22:57:20 +02:00
jpirnay
5636769418
Enhance README with new features and format support
...
Added Markdown and WiFi captive portal support to the list of features for CrossPoint forks. Updated format support for CrossPoint and SUMI to include MD.
2026-04-23 22:53:32 +02:00
jpirnay
3521128c3e
Version bump
2026-04-23 22:43:36 +02:00
jpirnay
e9b2e918ed
Merge pull request #124 from jpirnay/feat-markdown
...
feat: add + extend Markdown (.md) file reader #1698 by dcherrera
2026-04-23 22:40:56 +02:00
jpirnay
2faeb550fa
More fixes
2026-04-23 22:35:07 +02:00
jpirnay and Copilot
88bfb8a76a
Update workflow
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 22:32:39 +02:00
jpirnay
4346292340
Add additional file indicators
2026-04-23 22:21:43 +02:00
jpirnay and Copilot
c04153ec5a
Address cppcheck
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 22:14:41 +02:00
jpirnay and Copilot
e968a54e77
Improve nested lists
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 22:04:19 +02:00
jpirnay and Copilot
e0c42278ad
Stupid fix
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 21:51:22 +02:00
jpirnay
c2d51d6772
clang
2026-04-23 21:39:27 +02:00
jpirnay
cf376df34c
Rename
2026-04-23 21:37:52 +02:00
jpirnay and Copilot
35735b5175
Add code style
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 21:36:31 +02:00
jpirnay and Copilot
01a9d7cb36
Add TOC support
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-23 21:27:14 +02:00
jpirnay
a90290a596
add Markdown (.md) file reader with formatting support #1698 by dcherrera
2026-04-23 21:00:19 +02:00
jpirnay
e299318851
Merge pull request #122 from jpirnay/integrate-pr-1209
...
feat: multiple opds server support (upstream 1209 by osteotek)
2026-04-23 19:51:34 +02:00
jpirnay
a2f31f06e7
adress cppcheck complaint
2026-04-23 19:45:38 +02:00
jpirnay
6053ef4756
Review comments
2026-04-23 17:08:08 +02:00
jpirnay
9621dc1181
Cleanup startup
2026-04-23 16:44:27 +02:00
jpirnay
1d4748d20c
Merge pull request #123 from jpirnay/fix-indexing-on-toc-pagebreak
...
fix: Fix reindexing loop on toc-page-break
2026-04-23 16:34:07 +02:00
jpirnay
e0e3bd4251
Fix reindexing on toc-page-break
2026-04-23 13:15:30 +02:00
jpirnay
42fa3a4ac8
clang
2026-04-23 12:19:55 +02:00
jpirnay
d9d6e32359
git pre-commit hook for format fix ( #1730 ) - ux only
2026-04-23 09:47:40 +02:00
jpirnay
7c6e4728f4
Add swedish keyboard translations ( #1726 )
2026-04-23 09:42:01 +02:00
jpirnay
700d7b442b
fix: Erroneous navigation with long filenames in footnote links ( #1723 )
2026-04-23 09:39:58 +02:00
jpirnay
0d68162a07
show long branch names ( #1727 )
2026-04-23 09:33: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
e5e825e7a5
Update Italian according to #1718
2026-04-23 09:25:50 +02:00
jpirnay
9116070335
Update Spanish according to upstream #1717
2026-04-23 09:24:39 +02:00
jpirnay and Claude Sonnet 4.6
23a77c6aa5
fontconvert.py: cap group uncompressed size at 64 KB
...
Script-range boundaries alone don't bound group size — dense Unicode
blocks (CJK, user fonts) can produce groups of hundreds of KB. Add a
64 KB hard cap: when adding the next glyph would exceed it, close the
current group and start a new one with the same script ID.
64 KB is well above the largest current built-in group (~50 KB for
notosans_18 Cyrillic) and a safe transient malloc on the ESP32-C3.
The decompressor side already handles any number of groups per font.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-22 08:36:36 +02:00
jpirnay and Claude Sonnet 4.6
e76118dff0
FontDecompressor: eliminate persistent hot group buffer
...
The hot group buffer (formerly up to 50 KB BSS / heap) is removed.
During prewarm, each group is now decompressed into a transient malloc
that is freed immediately after its glyphs are extracted — only one
group buffer and the page buffer coexist at a time.
For getBitmap() cache misses (rare: only hit when a glyph wasn't
covered by prewarm), the group is also decompressed transiently and
freed after the single glyph is compacted into _hotGlyphBuf.
Peak heap during prewarm is now: page buffer + one group buffer.
Outside of prewarm, heap usage is only the page buffer itself.
Works correctly for large future fonts (Vietnamese, CJK) regardless
of group size, with no permanent allocation overhead.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-22 08:31:44 +02:00
jpirnay and Claude Sonnet 4.6
80722118a2
FontDecompressor: heap-allocate hot group buffer sized to active font
...
Replace the 50 KB static BSS _hotGroupBuf array with a heap pointer
allocated once per font (ensureHotGroupBuf). The buffer is sized to the
largest group in the active font — 6 KB for small fonts, ~50 KB for 18pt
— so no memory is wasted when rendering body text at typical sizes.
The buffer persists across pages (freed only in freeHotGroup/deinit),
so there is exactly one malloc per font session rather than one per page.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-22 08:14:04 +02:00
jpirnay
62e271ac8f
Merge pull request #119 from jpirnay/refactor-kosynchelper
...
refactor: Introduction of small helper routines
2026-04-22 07:37:14 +02:00
jpirnay and Claude 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
e30b7a551a
Introduction of small helper routines
2026-04-22 07:18:28 +02:00
jpirnay
8c72efb3b9
Reset version info
2026-04-22 07:04:31 +02:00
jpirnay
192eeaddc5
Merge pull request #118 from jpirnay/fix-ota-updater
...
feat: Try to support CaptivePortals
2026-04-22 06:52:32 +02:00
jpirnay
7da8b335ab
Review comments
2026-04-21 22:16:23 +02:00
jpirnay
157a19ff35
Address cppcheck issue
2026-04-21 22:04:07 +02:00
jpirnay
4efbc035ba
Try resetting the version info
2026-04-21 21:47:30 +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
b7928a86e3
Add hotel Wifi connection
2026-04-21 17:15:56 +02:00
jpirnay
d4c475470b
Allow cancellation of download, dont block the device
2026-04-21 14:26:21 +02:00
jpirnay
9b27564931
Merge pull request #115 from jpirnay/fix-halclock
...
fix: Add additional time zones
2026-04-20 21:24:50 +02:00
jpirnay
425c1db132
Review comments
2026-04-20 21:16:31 +02:00
jpirnay
3a4923c8d5
yaclf
2026-04-20 21:00:20 +02:00
jpirnay
a00712a085
Adjust warnings for x3
2026-04-20 20:50:33 +02:00
jpirnay
a6aed8d30e
Add additional timezones
2026-04-20 20:40:38 +02:00
jpirnay
02ddce1301
Merge pull request #114 from jpirnay/refactor-utf8-kosync
...
refactor: embrace utf8-counting helpers
2026-04-20 20:32:04 +02:00
jpirnay
966ba71a90
Embrace utf8-counting helpers
2026-04-20 20:16:40 +02:00
jpirnay
930b38fbaa
Merge pull request #113 from jpirnay/fix-x3-boot
...
fix: x3 boot issue regression (#102 )
2026-04-20 18:19:13 +02:00
jpirnay
5b31d49036
One more safety net
2026-04-20 17:42:27 +02:00
jpirnay
14975379cd
Add wstring to test shims
2026-04-20 17:40:31 +02:00
jpirnay
9f95567212
Fix x3 boot issue
2026-04-20 17:33:46 +02:00
jpirnay
a7638bb7d3
Merge pull request #87 from jgoguen/opds-multi-format-select
...
feat(opds): Allow selecting the download format
2026-04-20 14:26:00 +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
6f52aec95d
Merge pull request #107 from jgoguen/fix-parser-not-freed
...
fix: free parser on error
2026-04-20 14:07:23 +02:00
jpirnay
3e2f80f8ca
Merge pull request #105 from jgoguen/fix-parser-use-after-free
...
fix: harden OPDS parser cleanup after errors
2026-04-20 14:06:54 +02:00
jpirnay
36931aaa25
Merge pull request #108 from jpirnay/feature-webui-update
...
feat: webui update (integrate some ideas from upstream #1715 by pablohc)
2026-04-20 14:05:43 +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
jpirnay
fd72941cd4
Treat body[1] properly
2026-04-20 11:53:46 +02:00
jpirnay
38e90a818b
Make json field check more lenient
2026-04-20 11:39:21 +02:00
jpirnay
1eb23e6946
Merge pull request #111 from jpirnay/refactor-show-ntp-error
...
refactor: Display error reason on ntp time sync fail
2026-04-20 10:55:37 +02:00
jpirnay
ec90d46a02
Fix omission
2026-04-20 10:44:34 +02:00
jpirnay
bbafd4ce62
Display error reason on ntp time sync fail
2026-04-20 10:32:52 +02:00
jpirnay
ab9d47aac9
Review comments
2026-04-20 10:12:20 +02:00
jpirnay
8941ab9a1e
Always provide datetime
2026-04-20 10:11:14 +02:00
jpirnay
f018ad03dd
Merge pull request #100 from jgoguen/ci-run-tests
...
feat(ci): Run tests as part of CI
2026-04-20 09:58:13 +02:00
jpirnay
269ba96db8
Merge pull request #99 from jgoguen/update-url-utils
...
feat(UrlUtils): Resolve more URL formats
2026-04-20 09:57:37 +02:00
jpirnay
87b5776648
Wire clock to fil date times
2026-04-20 09:07:56 +02:00
jpirnay
26fb4d3b5a
Cosmetic + sorting
2026-04-20 09:05:02 +02:00