Skip to content

feat: Add reading menu and delete cache function#433

Merged
daveallie merged 8 commits intocrosspoint-reader:masterfrom
jonasdiemer:feature/delete-cache
Feb 1, 2026
Merged

feat: Add reading menu and delete cache function#433
daveallie merged 8 commits intocrosspoint-reader:masterfrom
jonasdiemer:feature/delete-cache

Conversation

@jonasdiemer
Copy link
Contributor

Summary

  • Adds a menu in the Epub reader
  • The Chapter selection is moved there to pos 1 (so it can be reached by double tapping the confirm button)
  • A Go Home is there, too
  • Most significantly, a function "Delete Book Cache" is added. This returns to main (to avoid directly rebuilding cached items, eg. if this is used to debug/develop other areas - and it's also easier ;))

Probably, the Sync function could now be moved from the Chapter selection to this menu, too.


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? PARTIALLY

@jonasdiemer jonasdiemer changed the title feat:Add reading menu and delete cache function feat: Add reading menu and delete cache function Jan 20, 2026
@lukestein
Copy link
Contributor

lukestein commented Jan 22, 2026

This PR fixes #475 (and presumably also fixes #477… THANK YOU!), but also does other important stuff with broader UX implications.

I hope @jonasdiemer won't mind that I've split his TOC/kosync bug fix code from here into a separate PR.

lukestein added a commit to lukestein/crosspoint-reader that referenced this pull request Jan 22, 2026
lukestein added a commit to lukestein/crosspoint-reader that referenced this pull request Jan 23, 2026
lukestein added a commit to lukestein/crosspoint-reader that referenced this pull request Jan 24, 2026
lukestein added a commit to lukestein/crosspoint-reader that referenced this pull request Jan 26, 2026
daveallie pushed a commit that referenced this pull request Jan 27, 2026
…rify default kosync URL (#501)

## Summary

* Fixes #475
* Fixes #477
* Closes #428

## Additional Context

* Updates to
`src/activities/reader/EpubReaderChapterSelectionActivity.cpp` are
copied verbatim from #433 (thanks to @jonasdiemer)
* Update to `src/activities/settings/KOReaderSettingsActivity.cpp` per
discussion with @itsthisjustin at #428

Tested on my device with several books and koreader sync turned on and
off.

---

### AI Usage

Did you use AI tools to help write this code? _NO_
Copy link
Member

@daveallie daveallie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keen to add this submenu, just needs a bit of a cleanup

Copy link
Member

@daveallie daveallie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually a couple of things after playing with it:

  1. Let's keep the menus looking consistent for now, this PR introduces a new line height for the menu, let's make it look like the chapter select
  2. Now that this new menu screen is the first screen you land on when pressing confirm, I think we should title it the book's title (like we currently do for the chapter select screen), and then retitle the chapter select screen to "Chapter select"

@jonasdiemer
Copy link
Contributor Author

Good catch, @daveallie - unified this (incl. the position of the Chapter selection title, which was slightly off). Maybe we should have global constants for title position, menu offsets, fonts, ...

Comment on lines 479 to 482
@@ -419,9 +482,11 @@ void EpubReaderActivity::renderScreen() {
data[5] = (section->pageCount >> 8) & 0xFF;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

section gets reset on line 287, so this crashes

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry this slipped through (during rebase). Pushed a quick fix, but wondering if it would be better to re-initialize section.

nkocher added a commit to nkocher/crosspoint-reader that referenced this pull request Jan 31, 2026
- Update current branch from theme-engine-wiggum to custom-v16
- Document v16.0 base with merged PRs crosspoint-reader#442, crosspoint-reader#506, crosspoint-reader#433
- Add git workflow for syncing with upstream
- Add code style patterns (house style, null-checks, settings)
- Document pre-commit hook behavior
- Remove outdated theme-specific content
- Update repository structure (private fork, remotes, branches)
- Clean up integrated PRs table
nkocher added a commit to nkocher/crosspoint-reader that referenced this pull request Jan 31, 2026
Critical learnings from v16.0 PR merges:
- Settings serialization order must preserve backward compatibility
- New settings always go at END of sequence
- Document PR crosspoint-reader#506 and crosspoint-reader#433 fixes
- Add working serial monitor command (cat vs pio device monitor)
Copy link
Member

@daveallie daveallie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I think in future we could also pass a few flags to clear cache to do things like keep / clear the progress

@daveallie daveallie merged commit f935b59 into crosspoint-reader:master Feb 1, 2026
1 check passed
@pablohc
Copy link
Contributor

pablohc commented Feb 1, 2026

Hi @jonasdiemer, in version 0.15 I was working on what I call "Magic Key." The BACK button on the HOME screen functions as a wildcard, allowing you to define these types of functions to simplify debugging tasks or any frequent function with just hold Back button. I've been working with other functions and I need to double-check that everything is working correctly in 0.16 before making a PR, but its usefulness will depend on whether there are already integrated functions in the system to be able to.

@jonasdiemer
Copy link
Contributor Author

Hi @jonasdiemer, in version 0.15 I was working on what I call "Magic Key." The BACK button on the HOME screen functions as a wildcard, allowing you to define these types of functions to simplify debugging tasks or any frequent function with just hold Back button. I've been working with other functions and I need to double-check that everything is working correctly in 0.16 before making a PR, but its usefulness will depend on whether there are already integrated functions in the system to be able to.

Hi @pablohc. Not sure if this is a question... I would probably prefer explicit "debug" functions in menus rather than a magic key (if you were asking for my opinion ;) ).

lukestein pushed a commit to lukestein/crosspoint-reader that referenced this pull request Feb 1, 2026
## Summary

* Adds a menu in the Epub reader
* The Chapter selection is moved there to pos 1 (so it can be reached by
double tapping the confirm button)
* A Go Home is there, too
* Most significantly, a function "Delete Book Cache" is added. This
returns to main (to avoid directly rebuilding cached items, eg. if this
is used to debug/develop other areas - and it's also easier ;))

Probably, the Sync function could now be moved from the Chapter
selection to this menu, too.

---

### 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? _**PARTIALLY**_
jdk2pq added a commit to jdk2pq/crosspoint-reader that referenced this pull request Feb 3, 2026
* master:
  feat: Debugging monitor script (crosspoint-reader#555)
  fix: truncating chapter titles using UTF-8 safe function (crosspoint-reader#599)
  fix: don't wake up after USB connect (crosspoint-reader#644)
  Revert "fix: don't wake up after USB connect" (crosspoint-reader#643)
  fix: custom sleep not showing image at index 0 (crosspoint-reader#639)
  docs: Update USER_GUIDE.md (crosspoint-reader#625)
  fix: Hide button hints in landscape CW mode (crosspoint-reader#637)
  fix: WiFi error screen text clarifications (crosspoint-reader#612)
  fix: don't wake up after USB connect (crosspoint-reader#576)
  feat(ui): change popup logic (crosspoint-reader#442)
  feat: Add reading menu and delete cache function (crosspoint-reader#433)
Jessica765 pushed a commit to Jessica765/crosspoint-reader that referenced this pull request Feb 3, 2026
…rify default kosync URL (crosspoint-reader#501)

## Summary

* Fixes crosspoint-reader#475
* Fixes crosspoint-reader#477
* Closes crosspoint-reader#428

## Additional Context

* Updates to
`src/activities/reader/EpubReaderChapterSelectionActivity.cpp` are
copied verbatim from crosspoint-reader#433 (thanks to @jonasdiemer)
* Update to `src/activities/settings/KOReaderSettingsActivity.cpp` per
discussion with @itsthisjustin at crosspoint-reader#428

Tested on my device with several books and koreader sync turned on and
off.

---

### AI Usage

Did you use AI tools to help write this code? _NO_
lukestein pushed a commit to lukestein/crosspoint-reader that referenced this pull request Feb 3, 2026
## Summary

* Adds a menu in the Epub reader
* The Chapter selection is moved there to pos 1 (so it can be reached by
double tapping the confirm button)
* A Go Home is there, too
* Most significantly, a function "Delete Book Cache" is added. This
returns to main (to avoid directly rebuilding cached items, eg. if this
is used to debug/develop other areas - and it's also easier ;))

Probably, the Sync function could now be moved from the Chapter
selection to this menu, too.

---

### 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? _**PARTIALLY**_
lukestein pushed a commit to lukestein/crosspoint-reader that referenced this pull request Feb 3, 2026
## Summary

* Adds a menu in the Epub reader
* The Chapter selection is moved there to pos 1 (so it can be reached by
double tapping the confirm button)
* A Go Home is there, too
* Most significantly, a function "Delete Book Cache" is added. This
returns to main (to avoid directly rebuilding cached items, eg. if this
is used to debug/develop other areas - and it's also easier ;))

Probably, the Sync function could now be moved from the Chapter
selection to this menu, too.

---

### 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? _**PARTIALLY**_
Unintendedsideeffects pushed a commit to Unintendedsideeffects/crosspoint-reader that referenced this pull request Feb 17, 2026
…rify default kosync URL (crosspoint-reader#501)

## Summary

* Fixes crosspoint-reader#475
* Fixes crosspoint-reader#477
* Closes crosspoint-reader#428

## Additional Context

* Updates to
`src/activities/reader/EpubReaderChapterSelectionActivity.cpp` are
copied verbatim from crosspoint-reader#433 (thanks to @jonasdiemer)
* Update to `src/activities/settings/KOReaderSettingsActivity.cpp` per
discussion with @itsthisjustin at crosspoint-reader#428

Tested on my device with several books and koreader sync turned on and
off.

---

### AI Usage

Did you use AI tools to help write this code? _NO_
Unintendedsideeffects pushed a commit to Unintendedsideeffects/crosspoint-reader that referenced this pull request Feb 17, 2026
## Summary

* Adds a menu in the Epub reader
* The Chapter selection is moved there to pos 1 (so it can be reached by
double tapping the confirm button)
* A Go Home is there, too
* Most significantly, a function "Delete Book Cache" is added. This
returns to main (to avoid directly rebuilding cached items, eg. if this
is used to debug/develop other areas - and it's also easier ;))

Probably, the Sync function could now be moved from the Chapter
selection to this menu, too.

---

### 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? _**PARTIALLY**_
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants