summaryrefslogtreecommitdiff
path: root/src/systemtask
diff options
context:
space:
mode:
authorJF <JF002@users.noreply.github.com>2022-01-04 21:44:36 +0100
committerGitHub <noreply@github.com>2022-01-04 21:44:36 +0100
commitb8b54f47a2a09e32186bf7d8dddc658fae2c6e5f (patch)
tree2b0d3f4873b54c388aa27d897e710665c857d321 /src/systemtask
parente0013e730448f4dc142e3610f970f22c807ac41e (diff)
parent15c3807a761b00a6dcdcc3a516e67e584f0a55c9 (diff)
Merge pull request #813 from SteveAmor/chimes
Chimes option
Diffstat (limited to 'src/systemtask')
-rw-r--r--src/systemtask/Messages.h2
-rw-r--r--src/systemtask/SystemTask.cpp20
2 files changed, 22 insertions, 0 deletions
diff --git a/src/systemtask/Messages.h b/src/systemtask/Messages.h
index cc30fdc6..4d5ab4ce 100644
--- a/src/systemtask/Messages.h
+++ b/src/systemtask/Messages.h
@@ -21,6 +21,8 @@ namespace Pinetime {
EnableSleeping,
DisableSleeping,
OnNewDay,
+ OnNewHour,
+ OnNewHalfHour,
OnChargingEvent,
OnPairing,
SetOffAlarm,
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index a95d479d..7fc3ba8f 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -403,6 +403,26 @@ void SystemTask::Work() {
// Remember we'll have to reset the counter next time we're awake
stepCounterMustBeReset = true;
break;
+ case Messages::OnNewHour:
+ using Pinetime::Controllers::AlarmController;
+ if (settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::Hours && alarmController.State() != AlarmController::AlarmState::Alerting) {
+ if (isSleeping && !isWakingUp) {
+ GoToRunning();
+ displayApp.PushMessage(Pinetime::Applications::Display::Messages::Clock);
+ }
+ motorController.RunForDuration(35);
+ }
+ break;
+ case Messages::OnNewHalfHour:
+ using Pinetime::Controllers::AlarmController;
+ if (settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::HalfHours && alarmController.State() != AlarmController::AlarmState::Alerting) {
+ if (isSleeping && !isWakingUp) {
+ GoToRunning();
+ displayApp.PushMessage(Pinetime::Applications::Display::Messages::Clock);
+ }
+ motorController.RunForDuration(35);
+ }
+ break;
case Messages::OnChargingEvent:
batteryController.ReadPowerState();
motorController.RunForDuration(15);