summaryrefslogtreecommitdiff
path: root/src/systemtask/SystemTask.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemtask/SystemTask.cpp')
-rw-r--r--src/systemtask/SystemTask.cpp26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 43e6f082..57d7fb17 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -167,6 +167,21 @@ void SystemTask::Work() {
isSleeping = false;
isWakingUp = false;
break;
+ case Messages::TouchWakeUp: {
+ auto touchInfo = touchPanel.GetTouchInfo();
+ if( touchInfo.isTouch and
+ (
+ ( touchInfo.gesture == Pinetime::Drivers::Cst816S::Gestures::DoubleTap and
+ settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::DoubleTap
+ ) or
+ ( touchInfo.gesture == Pinetime::Drivers::Cst816S::Gestures::SingleTap and
+ settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::SingleTap
+ )
+ )
+ ) {
+ GoToRunning();
+ }
+ } break;
case Messages::GoToSleep:
isGoingToSleep = true;
NRF_LOG_INFO("[systemtask] Going to sleep");
@@ -276,16 +291,7 @@ void SystemTask::OnTouchEvent() {
} else if(!isWakingUp) {
if( settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::None or
settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::RaiseWrist ) return;
-
- if( settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::SingleTap ) {
- GoToRunning();
- } else if( settingsController.getWakeUpMode() == Pinetime::Controllers::Settings::WakeUpMode::DoubleTap ) {
-
- auto info = touchPanel.GetTouchInfo();
- if( info.isTouch and info.gesture == Pinetime::Drivers::Cst816S::Gestures::DoubleTap ) {
- GoToRunning();
- }
- }
+ PushMessage(Messages::TouchWakeUp);
}
}