9
9
#include " service/loader/Loader.h"
10
10
11
11
#include < string>
12
+ #include < utility>
12
13
13
14
namespace tt ::app {
14
15
@@ -19,13 +20,13 @@ struct ElfManifest {
19
20
std::string name;
20
21
/* * Optional icon. */
21
22
std::string icon;
22
- CreateData _Nullable createData;
23
- DestroyData _Nullable destroyData;
24
- OnStart _Nullable onStart;
25
- OnStop _Nullable onStop;
26
- OnShow _Nullable onShow;
27
- OnHide _Nullable onHide;
28
- OnResult _Nullable onResult;
23
+ CreateData _Nullable createData = nullptr ;
24
+ DestroyData _Nullable destroyData = nullptr ;
25
+ OnStart _Nullable onStart = nullptr ;
26
+ OnStop _Nullable onStop = nullptr ;
27
+ OnShow _Nullable onShow = nullptr ;
28
+ OnHide _Nullable onHide = nullptr ;
29
+ OnResult _Nullable onResult = nullptr ;
29
30
};
30
31
31
32
static size_t elfManifestSetCount = 0 ;
@@ -88,7 +89,7 @@ class ElfApp : public App {
88
89
89
90
public:
90
91
91
- explicit ElfApp (const std::string& filePath) : filePath(filePath) {}
92
+ explicit ElfApp (std::string filePath) : filePath(std::move( filePath) ) {}
92
93
93
94
void onStart (AppContext& appContext) override {
94
95
auto initial_count = elfManifestSetCount;
@@ -101,7 +102,7 @@ class ElfApp : public App {
101
102
}
102
103
103
104
if (manifest->onStart != nullptr ) {
104
- manifest->onStart (appContext, data);
105
+ manifest->onStart (& appContext, data);
105
106
}
106
107
}
107
108
} else {
@@ -113,7 +114,7 @@ class ElfApp : public App {
113
114
TT_LOG_I (TAG, " Cleaning up app" );
114
115
if (manifest != nullptr ) {
115
116
if (manifest->onStop != nullptr ) {
116
- manifest->onStop (appContext, data);
117
+ manifest->onStop (& appContext, data);
117
118
}
118
119
119
120
if (manifest->destroyData != nullptr && data != nullptr ) {
@@ -127,19 +128,19 @@ class ElfApp : public App {
127
128
128
129
void onShow (AppContext& appContext, lv_obj_t * parent) override {
129
130
if (manifest != nullptr && manifest->onShow != nullptr ) {
130
- manifest->onShow (appContext, data, parent);
131
+ manifest->onShow (& appContext, data, parent);
131
132
}
132
133
}
133
134
134
135
void onHide (AppContext& appContext) override {
135
136
if (manifest != nullptr && manifest->onHide != nullptr ) {
136
- manifest->onHide (appContext, data);
137
+ manifest->onHide (& appContext, data);
137
138
}
138
139
}
139
140
140
141
void onResult (AppContext& appContext, Result result, std::unique_ptr<Bundle> resultBundle) override {
141
142
if (manifest != nullptr && manifest->onResult != nullptr ) {
142
- manifest->onResult (appContext, data, result, std::move ( resultBundle));
143
+ manifest->onResult (& appContext, data, result, resultBundle. get ( ));
143
144
}
144
145
}
145
146
};
0 commit comments