From 36b1b5e34551d79d345cf31620da2a5c8b549d87 Mon Sep 17 00:00:00 2001 From: jpirnay Date: Mon, 9 Mar 2026 22:48:14 +0100 Subject: [PATCH 1/2] Fix to master --- src/activities/reader/EpubReaderActivity.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/activities/reader/EpubReaderActivity.cpp b/src/activities/reader/EpubReaderActivity.cpp index 7a80adae..31246405 100644 --- a/src/activities/reader/EpubReaderActivity.cpp +++ b/src/activities/reader/EpubReaderActivity.cpp @@ -838,7 +838,7 @@ bool EpubReaderActivity::drawCurrentPageToBuffer(const std::string& filePath, Gf if (spineIndex < 0 || spineIndex >= epub->getSpineItemsCount()) spineIndex = 0; // Apply the reader orientation so margins match what the reader would produce - applyReaderOrientation(renderer, SETTINGS.orientation); + ReaderUtils::applyOrientation(renderer, SETTINGS.orientation); // Compute margins exactly as render() does int marginTop, marginRight, marginBottom, marginLeft; From 84044886a797e7820a1bf9b1e548a788133cd74f Mon Sep 17 00:00:00 2001 From: jpirnay Date: Thu, 19 Mar 2026 17:25:05 +0100 Subject: [PATCH 2/2] Use both .sleep and sleep directory --- src/activities/boot_sleep/SleepActivity.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/activities/boot_sleep/SleepActivity.cpp b/src/activities/boot_sleep/SleepActivity.cpp index e44c2754..826e609a 100644 --- a/src/activities/boot_sleep/SleepActivity.cpp +++ b/src/activities/boot_sleep/SleepActivity.cpp @@ -554,11 +554,21 @@ void SleepActivity::renderOverlaySleepScreen() const { return rc == PNG_SUCCESS; }; - // Try /sleep/ directory first (random selection, same as renderCustomSleepScreen). + // Try /.sleep/ (preferred) or /sleep/ directory (random selection, same as renderCustomSleepScreen). // Accepts both .bmp and .png files; .bmp headers are validated during the scan. bool overlayDrawn = false; - auto dir = Storage.open("/sleep"); + const char* sleepDir = nullptr; + auto dir = Storage.open("/.sleep"); if (dir && dir.isDirectory()) { + sleepDir = "/.sleep"; + } else { + if (dir) dir.close(); + dir = Storage.open("/sleep"); + if (dir && dir.isDirectory()) { + sleepDir = "/sleep"; + } + } + if (sleepDir) { std::vector files; char name[500]; for (auto file = dir.openNextFile(); file; file = dir.openNextFile()) { @@ -596,7 +606,7 @@ void SleepActivity::renderOverlaySleepScreen() const { } APP_STATE.lastSleepImage = randomFileIndex; APP_STATE.saveToFile(); - const std::string selected = "/sleep/" + files[randomFileIndex]; + const std::string selected = std::string(sleepDir) + "/" + files[randomFileIndex]; if (FsHelpers::checkFileExtension(selected, ".png")) { overlayDrawn = tryDrawPngOverlay(selected); } else {