Refactored manifest onStart/onStop to onCreate/onDestroy (#195)
When writing documentation, I realized how `onStart`/`onStop` isn't clearly communicating what it does (it could imply show/hide), so I renamed it to `onCreate` and `onDestroy`.
This commit is contained in:
committed by
GitHub
parent
6c67845645
commit
7856827ecf
@@ -38,8 +38,8 @@ public:
|
||||
App() = default;
|
||||
virtual ~App() = default;
|
||||
|
||||
virtual void onStart(AppContext& appContext) {}
|
||||
virtual void onStop(AppContext& appContext) {}
|
||||
virtual void onCreate(AppContext& appContext) {}
|
||||
virtual void onDestroy(AppContext& appContext) {}
|
||||
virtual void onShow(AppContext& appContext, lv_obj_t* parent) {}
|
||||
virtual void onHide(AppContext& appContext) {}
|
||||
virtual void onResult(AppContext& appContext, Result result, std::unique_ptr<Bundle> _Nullable resultData) {}
|
||||
|
||||
@@ -22,8 +22,8 @@ struct ElfManifest {
|
||||
std::string icon;
|
||||
CreateData _Nullable createData = nullptr;
|
||||
DestroyData _Nullable destroyData = nullptr;
|
||||
OnStart _Nullable onStart = nullptr;
|
||||
OnStop _Nullable onStop = nullptr;
|
||||
OnCreate _Nullable onCreate = nullptr;
|
||||
OnDestroy _Nullable onDestroy = nullptr;
|
||||
OnShow _Nullable onShow = nullptr;
|
||||
OnHide _Nullable onHide = nullptr;
|
||||
OnResult _Nullable onResult = nullptr;
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
|
||||
explicit ElfApp(std::string filePath) : filePath(std::move(filePath)) {}
|
||||
|
||||
void onStart(AppContext& appContext) override {
|
||||
void onCreate(AppContext& appContext) override {
|
||||
auto initial_count = elfManifestSetCount;
|
||||
if (startElf()) {
|
||||
if (elfManifestSetCount > initial_count) {
|
||||
@@ -101,8 +101,8 @@ public:
|
||||
data = manifest->createData();
|
||||
}
|
||||
|
||||
if (manifest->onStart != nullptr) {
|
||||
manifest->onStart(&appContext, data);
|
||||
if (manifest->onCreate != nullptr) {
|
||||
manifest->onCreate(&appContext, data);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -110,11 +110,11 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void onStop(AppContext& appContext) override {
|
||||
void onDestroy(AppContext& appContext) override {
|
||||
TT_LOG_I(TAG, "Cleaning up app");
|
||||
if (manifest != nullptr) {
|
||||
if (manifest->onStop != nullptr) {
|
||||
manifest->onStop(&appContext, data);
|
||||
if (manifest->onDestroy != nullptr) {
|
||||
manifest->onDestroy(&appContext, data);
|
||||
}
|
||||
|
||||
if (manifest->destroyData != nullptr && data != nullptr) {
|
||||
@@ -150,8 +150,8 @@ void setElfAppManifest(
|
||||
const char* _Nullable icon,
|
||||
CreateData _Nullable createData,
|
||||
DestroyData _Nullable destroyData,
|
||||
OnStart _Nullable onStart,
|
||||
OnStop _Nullable onStop,
|
||||
OnCreate _Nullable onCreate,
|
||||
OnDestroy _Nullable onDestroy,
|
||||
OnShow _Nullable onShow,
|
||||
OnHide _Nullable onHide,
|
||||
OnResult _Nullable onResult
|
||||
@@ -161,8 +161,8 @@ void setElfAppManifest(
|
||||
.icon = icon ? icon : "",
|
||||
.createData = createData,
|
||||
.destroyData = destroyData,
|
||||
.onStart = onStart,
|
||||
.onStop = onStop,
|
||||
.onCreate = onCreate,
|
||||
.onDestroy = onDestroy,
|
||||
.onShow = onShow,
|
||||
.onHide = onHide,
|
||||
.onResult = onResult
|
||||
|
||||
@@ -8,8 +8,8 @@ namespace tt::app {
|
||||
|
||||
typedef void* (*CreateData)();
|
||||
typedef void (*DestroyData)(void* data);
|
||||
typedef void (*OnStart)(void* appContext, void* _Nullable data);
|
||||
typedef void (*OnStop)(void* appContext, void* _Nullable data);
|
||||
typedef void (*OnCreate)(void* appContext, void* _Nullable data);
|
||||
typedef void (*OnDestroy)(void* appContext, void* _Nullable data);
|
||||
typedef void (*OnShow)(void* appContext, void* _Nullable data, lv_obj_t* parent);
|
||||
typedef void (*OnHide)(void* appContext, void* _Nullable data);
|
||||
typedef void (*OnResult)(void* appContext, void* _Nullable data, Result result, Bundle* resultData);
|
||||
@@ -19,8 +19,8 @@ void setElfAppManifest(
|
||||
const char* _Nullable icon,
|
||||
CreateData _Nullable createData,
|
||||
DestroyData _Nullable destroyData,
|
||||
OnStart _Nullable onStart,
|
||||
OnStop _Nullable onStop,
|
||||
OnCreate _Nullable onCreate,
|
||||
OnDestroy _Nullable onDestroy,
|
||||
OnShow _Nullable onShow,
|
||||
OnHide _Nullable onHide,
|
||||
OnResult _Nullable onResult
|
||||
|
||||
@@ -97,7 +97,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void onStop(AppContext& app) override {
|
||||
void onDestroy(AppContext& app) override {
|
||||
thread.join();
|
||||
}
|
||||
};
|
||||
|
||||
@@ -47,7 +47,7 @@ static lv_obj_t* createAppButton(lv_obj_t* parent, const char* title, const char
|
||||
|
||||
class LauncherApp : public App {
|
||||
|
||||
void onStart(TT_UNUSED AppContext& app) override {
|
||||
void onCreate(TT_UNUSED AppContext& app) override {
|
||||
auto* config = tt::getConfiguration();
|
||||
if (!config->autoStartAppId.empty()) {
|
||||
TT_LOG_I(TAG, "auto-starting %s", config->autoStartAppId.c_str());
|
||||
|
||||
@@ -231,7 +231,7 @@ public:
|
||||
listWidget = list;
|
||||
}
|
||||
|
||||
void onStart(AppContext& app) override {
|
||||
void onCreate(AppContext& app) override {
|
||||
updateTimer = std::make_unique<Timer>(Timer::Type::Once, updateTimerCallback, nullptr);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -118,7 +118,7 @@ static void transitionAppToState(std::shared_ptr<app::AppInstance> app, app::Sta
|
||||
case Initial:
|
||||
break;
|
||||
case Started:
|
||||
app->getApp()->onStart(*app);
|
||||
app->getApp()->onCreate(*app);
|
||||
break;
|
||||
case Showing: {
|
||||
LoaderEvent event_showing = { .type = LoaderEventTypeApplicationShowing };
|
||||
@@ -132,7 +132,7 @@ static void transitionAppToState(std::shared_ptr<app::AppInstance> app, app::Sta
|
||||
}
|
||||
case Stopped:
|
||||
// TODO: Verify manifest
|
||||
app->getApp()->onStop(*app);
|
||||
app->getApp()->onDestroy(*app);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user