Adjust navigation at end of book to home page on forward press

(cherry picked from commit deb6ff3b9d1a284594540513f19a3191936915c9)
This commit is contained in:
nscheung
2026-03-25 20:16:47 +01:00
committed by jpirnay
parent 6be2627b59
commit d8334e9fa4
3 changed files with 23 additions and 10 deletions
+8 -4
View File
@@ -205,11 +205,15 @@ void EpubReaderActivity::loop() {
return;
}
// any botton press when at end of the book goes back to the last page
// At end of the book, forward button goes home and back button returns to last page
if (currentSpineIndex > 0 && currentSpineIndex >= epub->getSpineItemsCount()) {
currentSpineIndex = epub->getSpineItemsCount() - 1;
nextPageNumber = UINT16_MAX;
requestUpdate();
if (nextTriggered) {
onGoHome();
} else {
currentSpineIndex = epub->getSpineItemsCount() - 1;
nextPageNumber = UINT16_MAX;
requestUpdate();
}
return;
}
+8 -3
View File
@@ -138,9 +138,14 @@ void TxtReaderActivity::loop() {
if (prevTriggered && currentPage > 0) {
currentPage--;
requestUpdate();
} else if (nextTriggered && currentPage < totalPages - 1) {
currentPage++;
requestUpdate();
} else if (nextTriggered) {
if (currentPage < totalPages - 1) {
currentPage++;
requestUpdate();
} else {
onGoHome();
return;
}
}
}
+7 -3
View File
@@ -98,10 +98,14 @@ void XtcReaderActivity::loop() {
return;
}
// Handle end of book
// At end of the book, forward button goes home and back button returns to last page
if (currentPage >= xtc->getPageCount()) {
currentPage = xtc->getPageCount() - 1;
requestUpdate();
if (nextTriggered) {
onGoHome();
} else {
currentPage = xtc->getPageCount() - 1;
requestUpdate();
}
return;
}