summaryrefslogtreecommitdiff
path: root/src/displayapp/screens
diff options
context:
space:
mode:
Diffstat (limited to 'src/displayapp/screens')
-rw-r--r--src/displayapp/screens/settings/SettingShakeThreshold.cpp9
-rw-r--r--src/displayapp/screens/settings/SettingShakeThreshold.h1
2 files changed, 9 insertions, 1 deletions
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;