From 7ca0418c82173fa1cff9537eaf1f030b5a712e9a Mon Sep 17 00:00:00 2001 From: mark9064 <30447455+mark9064@users.noreply.github.com> Date: Fri, 23 Aug 2024 00:15:24 +0100 Subject: Refactor doNotGoToSleep to a wakelock counter --- src/systemtask/SystemTask.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'src/systemtask/SystemTask.cpp') diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp index 4c623883..e55c9ad8 100644 --- a/src/systemtask/SystemTask.cpp +++ b/src/systemtask/SystemTask.cpp @@ -189,15 +189,11 @@ void SystemTask::Work() { if (xQueueReceive(systemTasksMsgQueue, &msg, 100) == pdTRUE) { switch (msg) { case Messages::EnableSleeping: - // Make sure that exiting an app doesn't enable sleeping, - // if the exiting was caused by a firmware update - if (!bleController.IsFirmwareUpdating()) { - doNotGoToSleep = false; - } + wakeLocksHeld--; break; case Messages::DisableSleeping: GoToRunning(); - doNotGoToSleep = true; + wakeLocksHeld++; break; case Messages::GoToRunning: GoToRunning(); @@ -243,24 +239,24 @@ void SystemTask::Work() { break; case Messages::BleFirmwareUpdateStarted: GoToRunning(); - doNotGoToSleep = true; + wakeLocksHeld++; displayApp.PushMessage(Pinetime::Applications::Display::Messages::BleFirmwareUpdateStarted); break; case Messages::BleFirmwareUpdateFinished: if (bleController.State() == Pinetime::Controllers::Ble::FirmwareUpdateStates::Validated) { NVIC_SystemReset(); } - doNotGoToSleep = false; + wakeLocksHeld--; break; case Messages::StartFileTransfer: NRF_LOG_INFO("[systemtask] FS Started"); GoToRunning(); - doNotGoToSleep = true; + wakeLocksHeld++; // TODO add intent of fs access icon or something break; case Messages::StopFileTransfer: NRF_LOG_INFO("[systemtask] FS Stopped"); - doNotGoToSleep = false; + wakeLocksHeld--; // TODO add intent of fs access icon or something break; case Messages::OnTouchEvent: -- cgit v1.2.3-70-g09d2