From f86c71b2bb4290adece06fb4cd0aed333201d9fa Mon Sep 17 00:00:00 2001 From: Tim Keller Date: Mon, 8 Nov 2021 02:00:35 +0000 Subject: [PATCH] Made calibration window enable Accel wakeups for setting and calibration even when wake mode is inactive. --- .../screens/settings/SettingShakeThreshold.cpp | 9 ++++++++- src/displayapp/screens/settings/SettingShakeThreshold.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/displayapp/screens/settings/SettingShakeThreshold.cpp b/src/displayapp/screens/settings/SettingShakeThreshold.cpp index c42bb9ae..06e233c4 100644 --- a/src/displayapp/screens/settings/SettingShakeThreshold.cpp +++ b/src/displayapp/screens/settings/SettingShakeThreshold.cpp @@ -63,13 +63,20 @@ SettingShakeThreshold::SettingShakeThreshold(DisplayApp* app, vDecay = xTaskGetTickCount(); calibrating = false; - + if(!settingsController.isWakeUpModeOn(Pinetime::Controllers::Settings::WakeUpMode::Shake)){ + EnableForCal = true; + settingsController.setWakeUpMode(Pinetime::Controllers::Settings::WakeUpMode::Shake,true); + } refreshTask = lv_task_create(RefreshTaskCallback, LV_DISP_DEF_REFR_PERIOD, LV_TASK_PRIO_MID, this); } SettingShakeThreshold::~SettingShakeThreshold() { settingsController.SetShakeThreshold(lv_arc_get_value(positionArc)); + if(EnableForCal){ + settingsController.setWakeUpMode(Pinetime::Controllers::Settings::WakeUpMode::Shake,false); + EnableForCal = false; + } lv_task_del(refreshTask); settingsController.SaveSettings(); lv_obj_clean(lv_scr_act()); diff --git a/src/displayapp/screens/settings/SettingShakeThreshold.h b/src/displayapp/screens/settings/SettingShakeThreshold.h index 6d4ccf66..b9ddd8b4 100644 --- a/src/displayapp/screens/settings/SettingShakeThreshold.h +++ b/src/displayapp/screens/settings/SettingShakeThreshold.h @@ -26,6 +26,7 @@ namespace Pinetime { Controllers::MotionController& motionController; System::SystemTask& systemTask; uint8_t calibrating; + bool EnableForCal; uint32_t vDecay,vCalTime; lv_obj_t *positionArc, *animArc,*calButton, *calLabel; lv_task_t* refreshTask;