summaryrefslogtreecommitdiff
path: root/src/displayapp/screens/Notifications.cpp
diff options
context:
space:
mode:
authorJean-François Milants <jf@codingfield.com>2021-04-04 12:10:47 +0200
committerJean-François Milants <jf@codingfield.com>2021-04-04 12:10:47 +0200
commit03de1c67393fcb99b5987514be6f470349c57c0f (patch)
tree5eacb0614b667ff62f417c390109482ed7e0a07d /src/displayapp/screens/Notifications.cpp
parent58a2d000c4d49d96121894d6dd6bb861d7564bea (diff)
Add support for notification title. The notification buffer must contain the title and the message separated by a '\0' character.
If the buffer does not contain any \0, the whole buffer is considered to be the message of the notification. A default title will be displayed in the notification app.
Diffstat (limited to 'src/displayapp/screens/Notifications.cpp')
-rw-r--r--src/displayapp/screens/Notifications.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/displayapp/screens/Notifications.cpp b/src/displayapp/screens/Notifications.cpp
index c903ed0f..457d1e06 100644
--- a/src/displayapp/screens/Notifications.cpp
+++ b/src/displayapp/screens/Notifications.cpp
@@ -17,8 +17,8 @@ Notifications::Notifications(DisplayApp *app,
auto notification = notificationManager.GetLastNotification();
if(notification.valid) {
currentId = notification.id;
- currentItem = std::make_unique<NotificationItem>("\nNotification",
- notification.message.data(),
+ currentItem = std::make_unique<NotificationItem>(notification.Title(),
+ notification.Message(),
notification.index,
notification.category,
notificationManager.NbNotifications(),
@@ -87,8 +87,8 @@ bool Notifications::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
currentId = previousNotification.id;
currentItem.reset(nullptr);
app->SetFullRefresh(DisplayApp::FullRefreshDirections::Up);
- currentItem = std::make_unique<NotificationItem>("\nNotification",
- previousNotification.message.data(),
+ currentItem = std::make_unique<NotificationItem>(previousNotification.Title(),
+ previousNotification.Message(),
previousNotification.index,
previousNotification.category,
notificationManager.NbNotifications(),
@@ -109,8 +109,8 @@ bool Notifications::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
currentId = nextNotification.id;
currentItem.reset(nullptr);
app->SetFullRefresh(DisplayApp::FullRefreshDirections::Down);
- currentItem = std::make_unique<NotificationItem>("\nNotification",
- nextNotification.message.data(),
+ currentItem = std::make_unique<NotificationItem>(nextNotification.Title(),
+ nextNotification.Message(),
nextNotification.index,
nextNotification.category,
notificationManager.NbNotifications(),
@@ -178,8 +178,9 @@ namespace {
lv_obj_t* alert_type = lv_label_create(lv_scr_act(), nullptr);
lv_obj_set_style_local_text_color(alert_type, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0x888888));
+ if(title == nullptr) title = "Notification";
lv_label_set_text(alert_type, title);
- lv_obj_align(alert_type, NULL, LV_ALIGN_IN_TOP_LEFT, 0, -4);
+ lv_obj_align(alert_type, NULL, LV_ALIGN_IN_TOP_LEFT, 0, 16);
/////////
switch(category) {