From 84044886a797e7820a1bf9b1e548a788133cd74f Mon Sep 17 00:00:00 2001 From: jpirnay Date: Thu, 19 Mar 2026 17:25:05 +0100 Subject: [PATCH] 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 {