diff options
Diffstat (limited to 'src/components/ble')
-rw-r--r-- | src/components/ble/NotificationManager.cpp | 5 | ||||
-rw-r--r-- | src/components/ble/NotificationManager.h | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/components/ble/NotificationManager.cpp b/src/components/ble/NotificationManager.cpp index 6ed3f835..11555bee 100644 --- a/src/components/ble/NotificationManager.cpp +++ b/src/components/ble/NotificationManager.cpp @@ -28,6 +28,7 @@ void NotificationManager::Push(Pinetime::Controllers::NotificationManager::Categ NotificationManager::Notification NotificationManager::GetLastNotification() { NotificationManager::Notification notification = notifications[readIndex]; + notification.index = 1; return notification; } @@ -81,3 +82,7 @@ bool NotificationManager::ClearNewNotificationFlag() { return newNotification.exchange(false); } +size_t NotificationManager::NbNotifications() const { + return std::count_if(notifications.begin(), notifications.end(), [](const Notification& n){ return n.valid;}); +} + diff --git a/src/components/ble/NotificationManager.h b/src/components/ble/NotificationManager.h index e4e2b4d4..64c6df6d 100644 --- a/src/components/ble/NotificationManager.h +++ b/src/components/ble/NotificationManager.h @@ -15,7 +15,6 @@ namespace Pinetime { Id id; bool valid = false; uint8_t index; - uint8_t number = TotalNbNotifications; std::array<char, MessageSize+1> message; Categories category = Categories::Unknown; }; @@ -29,6 +28,7 @@ namespace Pinetime { bool AreNewNotificationsAvailable(); static constexpr uint8_t MaximumMessageSize() { return MessageSize; }; + size_t NbNotifications() const; private: Notification::Id GetNextId(); |