summaryrefslogtreecommitdiff
path: root/src/systemtask
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemtask')
-rw-r--r--src/systemtask/SystemTask.cpp26
-rw-r--r--src/systemtask/SystemTask.h2
2 files changed, 17 insertions, 11 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 43e6f08..57d7fb1 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);
}
}
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index fda951b..9d0b41a 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -37,7 +37,7 @@ namespace Pinetime {
namespace System {
class SystemTask {
public:
- enum class Messages {GoToSleep, GoToRunning, OnNewTime, OnNewNotification, OnNewCall, BleConnected, UpdateTimeOut,
+ enum class Messages {GoToSleep, GoToRunning, TouchWakeUp, OnNewTime, OnNewNotification, OnNewCall, BleConnected, UpdateTimeOut,
BleFirmwareUpdateStarted, BleFirmwareUpdateFinished, OnTouchEvent, OnButtonEvent, OnDisplayTaskSleeping, EnableSleeping, DisableSleeping
};