aod: PPI/RTC-based backlight brightness

This commit is contained in:
mark9064
2024-01-22 23:37:52 +00:00
committed by JF
parent 20ac7e8df3
commit 3dca742b65
4 changed files with 146 additions and 16 deletions

View File

@@ -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;