feat: add long-press Confirm for book management in file browser and recents

Long-pressing Confirm on a book file in MyLibraryActivity or
RecentBooksActivity opens the BookManageMenuActivity popup with
Archive/Delete/Delete Cache/Reindex options. Actions are executed
via BookManager and the file list is refreshed afterward.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
cottongin
2026-02-21 02:57:19 -05:00
parent 49471e36f1
commit 390f10f30d
4 changed files with 134 additions and 0 deletions

View File

@@ -17,6 +17,10 @@ class MyLibraryActivity final : public ActivityWithSubactivity {
std::string basepath = "/";
std::vector<std::string> files;
// Long-press state
bool ignoreNextConfirmRelease = false;
static constexpr unsigned long LONG_PRESS_MS = 700;
// Callbacks
const std::function<void(const std::string& path)> onSelectBook;
const std::function<void()> onGoHome;
@@ -25,6 +29,8 @@ class MyLibraryActivity final : public ActivityWithSubactivity {
void loadFiles();
size_t findEntry(const std::string& name) const;
void openManageMenu(const std::string& bookPath);
public:
explicit MyLibraryActivity(GfxRenderer& renderer, MappedInputManager& mappedInput,
const std::function<void()>& onGoHome,