Brightness management in DisplayApp : do not allow the brightness level OFF when loading app and going to running mode. Such issue could occur in case of inconsistent or corrupted settings.
This commit is contained in:
parent
60abbf0639
commit
c9b1fb8244
|
@ -127,7 +127,7 @@ void DisplayApp::Process(void* instance) {
|
|||
|
||||
void DisplayApp::InitHw() {
|
||||
brightnessController.Init();
|
||||
brightnessController.Set(settingsController.GetBrightness());
|
||||
ApplyBrightness();
|
||||
}
|
||||
|
||||
void DisplayApp::Refresh() {
|
||||
|
@ -158,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) {
|
||||
|
@ -169,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:
|
||||
|
@ -303,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);
|
||||
|
@ -530,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);
|
||||
}
|
||||
|
|
|
@ -121,6 +121,7 @@ namespace Pinetime {
|
|||
Apps nextApp = Apps::None;
|
||||
DisplayApp::FullRefreshDirections nextDirection;
|
||||
System::BootErrors bootError;
|
||||
void ApplyBrightness();
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user