aboutsummaryrefslogtreecommitdiffstats
path: root/src/systemtask/SystemTask.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemtask/SystemTask.cpp')
-rw-r--r--src/systemtask/SystemTask.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 246e7cec..5a885f17 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -342,8 +342,12 @@ void SystemTask::Work() {
if (settingsController.GetNotificationStatus() != Controllers::Settings::Notification::Sleep &&
settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::Hours &&
alarmController.State() != AlarmController::AlarmState::Alerting) {
+ // if sleeping, we can't send a chime to displayApp yet (SPI flash switched off)
+ // request running first and repush the chime message
if (state == SystemTaskState::Sleeping) {
GoToRunning();
+ PushMessage(msg);
+ } else {
displayApp.PushMessage(Pinetime::Applications::Display::Messages::Chime);
}
}
@@ -353,8 +357,12 @@ void SystemTask::Work() {
if (settingsController.GetNotificationStatus() != Controllers::Settings::Notification::Sleep &&
settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::HalfHours &&
alarmController.State() != AlarmController::AlarmState::Alerting) {
+ // if sleeping, we can't send a chime to displayApp yet (SPI flash switched off)
+ // request running first and repush the chime message
if (state == SystemTaskState::Sleeping) {
GoToRunning();
+ PushMessage(msg);
+ } else {
displayApp.PushMessage(Pinetime::Applications::Display::Messages::Chime);
}
}