diff options
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
| -rw-r--r-- | src/displayapp/DisplayApp.cpp | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp index 29684466..85c6da3e 100644 --- a/src/displayapp/DisplayApp.cpp +++ b/src/displayapp/DisplayApp.cpp @@ -75,7 +75,8 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd, Pinetime::Controllers::TimerController& timerController, Pinetime::Controllers::AlarmController& alarmController, Pinetime::Controllers::BrightnessController& brightnessController, - Pinetime::Controllers::TouchHandler& touchHandler) + Pinetime::Controllers::TouchHandler& touchHandler, + Pinetime::Controllers::FS& filesystem) : lcd {lcd}, lvgl {lvgl}, touchPanel {touchPanel}, @@ -91,7 +92,8 @@ DisplayApp::DisplayApp(Drivers::St7789& lcd, timerController {timerController}, alarmController {alarmController}, brightnessController {brightnessController}, - touchHandler {touchHandler} { + touchHandler {touchHandler}, + filesystem {filesystem} { } void DisplayApp::Start(System::BootErrors error) { @@ -125,7 +127,7 @@ void DisplayApp::Process(void* instance) { void DisplayApp::InitHw() { brightnessController.Init(); - brightnessController.Set(settingsController.GetBrightness()); + ApplyBrightness(); } void DisplayApp::Refresh() { @@ -156,7 +158,7 @@ void DisplayApp::Refresh() { brightnessController.Set(Controllers::BrightnessController::Levels::Low); break; case Messages::RestoreBrightness: - brightnessController.Set(settingsController.GetBrightness()); + ApplyBrightness(); break; case Messages::GoToSleep: while (brightnessController.Level() != Controllers::BrightnessController::Levels::Off) { @@ -167,7 +169,7 @@ void DisplayApp::Refresh() { state = States::Idle; break; case Messages::GoToRunning: - brightnessController.Set(settingsController.GetBrightness()); + ApplyBrightness(); state = States::Running; break; case Messages::UpdateTimeOut: @@ -301,7 +303,7 @@ void DisplayApp::ReturnApp(Apps app, DisplayApp::FullRefreshDirections direction void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) { touchHandler.CancelTap(); - brightnessController.Set(settingsController.GetBrightness()); + ApplyBrightness(); currentScreen.reset(nullptr); SetFullRefresh(direction); @@ -324,7 +326,8 @@ void DisplayApp::LoadApp(Apps app, DisplayApp::FullRefreshDirections direction) notificationManager, settingsController, heartRateController, - motionController); + motionController, + filesystem); break; case Apps::Error: @@ -527,3 +530,12 @@ void DisplayApp::PushMessageToSystemTask(Pinetime::System::Messages message) { void DisplayApp::Register(Pinetime::System::SystemTask* systemTask) { this->systemTask = systemTask; } +void DisplayApp::ApplyBrightness() { + auto brightness = settingsController.GetBrightness(); + if(brightness != Controllers::BrightnessController::Levels::Low && + brightness != Controllers::BrightnessController::Levels::Medium && + brightness != Controllers::BrightnessController::Levels::High) { + brightness = Controllers::BrightnessController::Levels::High; + } + brightnessController.Set(brightness); +} |
