aboutsummaryrefslogtreecommitdiffstats
path: root/src/displayapp/DisplayApp.cpp
diff options
context:
space:
mode:
authormark9064 <30447455+mark9064@users.noreply.github.com>2024-01-22 23:37:52 +0000
committerJF <JF002@users.noreply.github.com>2024-08-05 20:32:43 +0200
commit3dca742b6566859aee89e1b943ae2ea5fc0eaa95 (patch)
tree8520a6872ede1d78475211000d319b5e40b255c3 /src/displayapp/DisplayApp.cpp
parent20ac7e8df38836d0a72c378b900b99c827c996c2 (diff)
aod: PPI/RTC-based backlight brightness
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
-rw-r--r--src/displayapp/DisplayApp.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index c7fb62ab..5e68ef23 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -242,11 +242,17 @@ void DisplayApp::Refresh() {
RestoreBrightness();
break;
case Messages::GoToSleep:
- while (brightnessController.Level() != Controllers::BrightnessController::Levels::Off) {
+ while (brightnessController.Level() != Controllers::BrightnessController::Levels::Low) {
brightnessController.Lower();
vTaskDelay(100);
}
- lcd.Sleep();
+ // Don't actually turn off the display for AlwaysOn mode
+ if (settingsController.GetAlwaysOnDisplay()) {
+ brightnessController.Set(Controllers::BrightnessController::Levels::AlwaysOn);
+ } else {
+ brightnessController.Set(Controllers::BrightnessController::Levels::Off);
+ lcd.Sleep();
+ }
PushMessageToSystemTask(Pinetime::System::Messages::OnDisplayTaskSleeping);
state = States::Idle;
break;