From bcd353f0606c0423317b4c91818f57aa84aba0b3 Mon Sep 17 00:00:00 2001 From: Victor Kareh Date: Mon, 12 Feb 2024 14:08:19 -0500 Subject: [PATCH] DisplayApp: Add function to determine if app is available --- src/displayapp/DisplayApp.cpp | 7 +++++++ src/displayapp/DisplayApp.h | 1 + 2 files changed, 8 insertions(+) diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp index 4ceb5429..d0bf2240 100644 --- a/src/displayapp/DisplayApp.cpp +++ b/src/displayapp/DisplayApp.cpp @@ -648,6 +648,13 @@ void DisplayApp::LoadScreen(Apps app, DisplayApp::FullRefreshDirections directio currentApp = app; } +bool DisplayApp::AppAvailable(Apps app) { + const auto* d = std::find_if(userApps.begin(), userApps.end(), [app](const AppDescription& appDescription) { + return appDescription.app == app; + }); + return d != userApps.end(); +} + void DisplayApp::PushMessage(Messages msg) { if (in_isr()) { BaseType_t xHigherPriorityTaskWoken = pdFALSE; diff --git a/src/displayapp/DisplayApp.h b/src/displayapp/DisplayApp.h index d443b8b2..25a7d793 100644 --- a/src/displayapp/DisplayApp.h +++ b/src/displayapp/DisplayApp.h @@ -131,6 +131,7 @@ namespace Pinetime { DisplayApp::FullRefreshDirections nextDirection; System::BootErrors bootError; void ApplyBrightness(); + bool AppAvailable(Apps app); static constexpr size_t returnAppStackSize = 10; Utility::StaticStack returnAppStack;