fix: resolve three reader bugs (confirm eaten, footnotes menu, phantom render)
1. Clear ignoreNextConfirmRelease after transferring state to child activity, so the next Confirm press isn't silently consumed. 2. Add conditional FOOTNOTES entry to reader menu when the current book has footnotes. 3. Guard clock-minute requestUpdate() with !isReaderActivity() to prevent full e-ink re-renders every minute while reading. Made-with: Cursor
This commit is contained in:
@@ -447,6 +447,7 @@ void EpubReaderActivity::onReaderMenuConfirm(EpubReaderMenuActivity::MenuAction
|
||||
: epub->getTocIndexForSpineIndex(currentSpineIndex);
|
||||
const std::string path = epub->getPath();
|
||||
const bool consumeRelease = ignoreNextConfirmRelease;
|
||||
ignoreNextConfirmRelease = false;
|
||||
startActivityForResult(
|
||||
std::make_unique<EpubReaderChapterSelectionActivity>(renderer, mappedInput, epub, path, spineIdx, tocIdx,
|
||||
consumeRelease),
|
||||
|
||||
@@ -39,6 +39,9 @@ std::vector<EpubReaderMenuActivity::MenuItem> EpubReaderMenuActivity::buildMenuI
|
||||
items.push_back({MenuAction::ADD_BOOKMARK, StrId::STR_ADD_BOOKMARK});
|
||||
}
|
||||
items.push_back({MenuAction::DICTIONARY, StrId::STR_DICTIONARY});
|
||||
if (hasFootnotes) {
|
||||
items.push_back({MenuAction::FOOTNOTES, StrId::STR_FOOTNOTES});
|
||||
}
|
||||
items.push_back({MenuAction::TOGGLE_ORIENTATION, StrId::STR_TOGGLE_ORIENTATION});
|
||||
items.push_back({MenuAction::TOGGLE_FONT_SIZE, StrId::STR_TOGGLE_FONT_SIZE});
|
||||
items.push_back({MenuAction::LETTERBOX_FILL, StrId::STR_OVERRIDE_LETTERBOX_FILL});
|
||||
|
||||
Reference in New Issue
Block a user