From 5e6868d9eb0957eeaaeb34269a7614a0a3f417e8 Mon Sep 17 00:00:00 2001 From: Riku Isokoski Date: Sat, 1 Jan 2022 16:22:35 +0200 Subject: Improved notification timeout --- src/displayapp/screens/Notifications.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/displayapp/screens/Notifications.h') diff --git a/src/displayapp/screens/Notifications.h b/src/displayapp/screens/Notifications.h index cbb7af6c..2f444c7c 100644 --- a/src/displayapp/screens/Notifications.h +++ b/src/displayapp/screens/Notifications.h @@ -1,11 +1,13 @@ #pragma once #include +#include #include #include #include "displayapp/screens/Screen.h" #include "components/ble/NotificationManager.h" #include "components/motor/MotorController.h" +#include "systemtask/SystemTask.h" namespace Pinetime { namespace Controllers { @@ -21,11 +23,13 @@ namespace Pinetime { Pinetime::Controllers::NotificationManager& notificationManager, Pinetime::Controllers::AlertNotificationService& alertNotificationService, Pinetime::Controllers::MotorController& motorController, + System::SystemTask& systemTask, Modes mode); ~Notifications() override; void Refresh() override; bool OnTouchEvent(Pinetime::Applications::TouchEvents event) override; + void OnPreviewInteraction(); class NotificationItem { public: @@ -62,6 +66,7 @@ namespace Pinetime { }; Pinetime::Controllers::NotificationManager& notificationManager; Pinetime::Controllers::AlertNotificationService& alertNotificationService; + System::SystemTask& systemTask; Modes mode = Modes::Normal; std::unique_ptr currentItem; Controllers::NotificationManager::Notification::Id currentId; @@ -69,8 +74,9 @@ namespace Pinetime { lv_point_t timeoutLinePoints[2] {{0, 1}, {239, 1}}; lv_obj_t* timeoutLine = nullptr; - uint32_t timeoutTickCountStart; - uint32_t timeoutTickCountEnd; + TickType_t timeoutTickCountStart; + static const TickType_t timeoutLength = pdMS_TO_TICKS(7000); + bool interacted = true; lv_task_t* taskRefresh; }; -- cgit v1.2.3-70-g09d2