2025-12-06 04:20:03 +11:00
|
|
|
#include "SleepScreen.h"
|
|
|
|
|
|
2025-12-08 22:06:09 +11:00
|
|
|
#include <GfxRenderer.h>
|
2025-12-06 04:20:03 +11:00
|
|
|
|
2025-12-15 23:17:23 +11:00
|
|
|
#include "CrossPointSettings.h"
|
2025-12-08 22:06:09 +11:00
|
|
|
#include "config.h"
|
2025-12-08 19:48:49 +11:00
|
|
|
#include "images/CrossLarge.h"
|
2025-12-06 04:20:03 +11:00
|
|
|
|
2025-12-08 19:48:49 +11:00
|
|
|
void SleepScreen::onEnter() {
|
2025-12-08 22:06:09 +11:00
|
|
|
const auto pageWidth = GfxRenderer::getScreenWidth();
|
|
|
|
|
const auto pageHeight = GfxRenderer::getScreenHeight();
|
2025-12-08 19:48:49 +11:00
|
|
|
|
|
|
|
|
renderer.clearScreen();
|
2025-12-08 22:52:19 +11:00
|
|
|
renderer.drawImage(CrossLarge, (pageWidth - 128) / 2, (pageHeight - 128) / 2, 128, 128);
|
|
|
|
|
renderer.drawCenteredText(UI_FONT_ID, pageHeight / 2 + 70, "CrossPoint", true, BOLD);
|
|
|
|
|
renderer.drawCenteredText(SMALL_FONT_ID, pageHeight / 2 + 95, "SLEEPING");
|
2025-12-15 13:16:46 +01:00
|
|
|
|
|
|
|
|
// Apply white screen if enabled in settings
|
|
|
|
|
if (!SETTINGS.whiteSleepScreen) {
|
|
|
|
|
renderer.invertScreen();
|
|
|
|
|
}
|
|
|
|
|
|
2025-12-08 22:06:09 +11:00
|
|
|
renderer.displayBuffer(EInkDisplay::HALF_REFRESH);
|
2025-12-08 19:48:49 +11:00
|
|
|
}
|