DisplayApp: Add function to determine if app is available

This commit is contained in:
Victor Kareh 2024-02-12 14:08:19 -05:00
parent 29bc698a44
commit bcd353f060
2 changed files with 8 additions and 0 deletions

View file

@ -648,6 +648,13 @@ void DisplayApp::LoadScreen(Apps app, DisplayApp::FullRefreshDirections directio
currentApp = app; 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) { void DisplayApp::PushMessage(Messages msg) {
if (in_isr()) { if (in_isr()) {
BaseType_t xHigherPriorityTaskWoken = pdFALSE; BaseType_t xHigherPriorityTaskWoken = pdFALSE;

View file

@ -131,6 +131,7 @@ namespace Pinetime {
DisplayApp::FullRefreshDirections nextDirection; DisplayApp::FullRefreshDirections nextDirection;
System::BootErrors bootError; System::BootErrors bootError;
void ApplyBrightness(); void ApplyBrightness();
bool AppAvailable(Apps app);
static constexpr size_t returnAppStackSize = 10; static constexpr size_t returnAppStackSize = 10;
Utility::StaticStack<Apps, returnAppStackSize> returnAppStack; Utility::StaticStack<Apps, returnAppStackSize> returnAppStack;