mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2025-10-09 14:42:35 +02:00
* feat: app chaining * add `launch_current_app_after_deferred`, remove `get_referring_application` * fix naming * new api * fix f18 * fix deferred launches after errors * fix: memory leak * Updater: MIN_GAP_PAGES = 0 * loader: loader_get_application_launch_path doc * loader: fix freeze * loader: reject mlib, reduce code size * loader: generic synchronous call, reduce size * loader: reject furi_string, reduce size * apps: debug: removed order field from manifests since it is no longer meaningful --------- Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com> Co-authored-by: hedger <hedger@nanode.su>
28 lines
1.0 KiB
C
28 lines
1.0 KiB
C
#include <furi.h>
|
|
#include <dialogs/dialogs.h>
|
|
#include <loader/loader.h>
|
|
|
|
int32_t chaining_test_app_b(const char* arg) {
|
|
if(!arg) return 0;
|
|
|
|
Loader* loader = furi_record_open(RECORD_LOADER);
|
|
DialogsApp* dialogs = furi_record_open(RECORD_DIALOGS);
|
|
|
|
DialogMessage* message = dialog_message_alloc();
|
|
dialog_message_set_header(message, "Hi, I am B", 64, 0, AlignCenter, AlignTop);
|
|
FuriString* text = furi_string_alloc_printf("And A told me:\n%s", arg);
|
|
dialog_message_set_text(message, furi_string_get_cstr(text), 64, 32, AlignCenter, AlignCenter);
|
|
dialog_message_set_buttons(message, "Just quit", NULL, "Launch A");
|
|
DialogMessageButton result = dialog_message_show(dialogs, message);
|
|
dialog_message_free(message);
|
|
furi_string_free(text);
|
|
|
|
if(result == DialogMessageButtonRight)
|
|
loader_enqueue_launch(
|
|
loader, "/ext/apps/Debug/loader_chaining_a.fap", NULL, LoaderDeferredLaunchFlagGui);
|
|
|
|
furi_record_close(RECORD_LOADER);
|
|
furi_record_close(RECORD_DIALOGS);
|
|
return 0;
|
|
}
|