summaryrefslogtreecommitdiff
path: root/src/DisplayApp/DisplayApp.cpp
diff options
context:
space:
mode:
authorJF <jf@codingfield.com>2020-03-25 21:23:40 +0100
committerJF <jf@codingfield.com>2020-03-25 21:23:40 +0100
commit68240704c7a60534342cfc0157564f11cf82d9d8 (patch)
tree8472af61a5fa8a99ce5549f2de73b47f73cf41b6 /src/DisplayApp/DisplayApp.cpp
parent7e9a7e4d5fa0f55b43180600d499f1d0ce6aded1 (diff)
Add support for BLE notification (ANS client).
Work In Progress!!!
Diffstat (limited to 'src/DisplayApp/DisplayApp.cpp')
-rw-r--r--src/DisplayApp/DisplayApp.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp
index e7187f1d..2e07cbc5 100644
--- a/src/DisplayApp/DisplayApp.cpp
+++ b/src/DisplayApp/DisplayApp.cpp
@@ -38,6 +38,7 @@ DisplayApp::DisplayApp(Pinetime::Drivers::St7789& lcd,
systemTask{systemTask} {
msgQueue = xQueueCreate(queueSize, itemSize);
onClockApp = true;
+ modal.reset(new Screens::Modal(this));
}
void DisplayApp::Start() {
@@ -103,6 +104,7 @@ void DisplayApp::Refresh() {
state = States::Running;
break;
case Messages::UpdateDateTime:
+// modal->Show();
break;
case Messages::UpdateBleConnection:
// clockScreen.SetBleConnectionState(bleController.IsConnected() ? Screens::Clock::BleConnectionStates::Connected : Screens::Clock::BleConnectionStates::NotConnected);
@@ -110,6 +112,15 @@ void DisplayApp::Refresh() {
case Messages::UpdateBatteryLevel:
// clockScreen.SetBatteryPercentRemaining(batteryController.PercentRemaining());
break;
+ case Messages::NewNotification: {
+ Pinetime::Controllers::Ble::NotificationMessage notificationMessage;
+ if (bleController.PopNotification(notificationMessage)) {
+ std::string m {notificationMessage.message, notificationMessage.size};
+ modal->Show(m);
+ // TODO delete message
+ }
+ }
+ break;
case Messages::TouchEvent: {
if (state != States::Running) break;
auto gesture = OnTouchEvent();