More reshaping

This commit is contained in:
jpirnay
2026-04-09 21:50:32 +02:00
parent 68f175eced
commit 14dcd8be0f
11 changed files with 144 additions and 59 deletions
@@ -2,6 +2,7 @@
#include <Epub.h>
#include <I18n.h>
#include <functional>
#include <string>
#include <vector>
@@ -29,6 +30,12 @@ class EpubReaderMenuActivity final : public Activity {
DELETE_CACHE
};
struct MenuItem {
MenuAction action;
StrId labelId;
bool isSeparator = false;
};
explicit EpubReaderMenuActivity(GfxRenderer& renderer, MappedInputManager& mappedInput, const std::string& title,
const int currentPage, const int totalPages, const int bookProgressPercent,
const uint8_t currentOrientation, const bool hasFootnotes,
@@ -40,17 +47,10 @@ class EpubReaderMenuActivity final : public Activity {
void loop() override;
void render(RenderLock&&) override;
private:
struct MenuItem {
MenuAction action;
StrId labelId;
bool isSeparator = false;
};
static std::vector<MenuItem> buildMenuItems(bool hasFootnotes);
std::function<bool(int)> buildSelectablePredicate() const;
private:
// Fixed menu layout
const std::vector<MenuItem> menuItems;