* Core: rename internal FlipperApplication to FlipperInternalApplication * FAP Loader: move load_name_and_icon to flipper_application library * Loader menu: rework api * View holder: move to gui service * Loader: simple "loading" worker * Loader: applications dialog * Loader: fapping * Update f18 api * Apps: remove fap_loader * Libs, flipper application: store args, rename thread allocation * Loader: error handling * Apps: use loader error handling * Loader: documentation * FBT: accomodate loader * Loader: do not raise gui error if loader is locked * Archive: accomodate loader * Loader: fix loading message * Flipper: drop some old dolphin legacy * Loader: generalize error construction Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			55 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include <furi.h>
 | 
						|
#include <gui/icon.h>
 | 
						|
 | 
						|
typedef enum {
 | 
						|
    FlipperInternalApplicationFlagDefault = 0,
 | 
						|
    FlipperInternalApplicationFlagInsomniaSafe = (1 << 0),
 | 
						|
} FlipperInternalApplicationFlag;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
    const FuriThreadCallback app;
 | 
						|
    const char* name;
 | 
						|
    const char* appid;
 | 
						|
    const size_t stack_size;
 | 
						|
    const Icon* icon;
 | 
						|
    const FlipperInternalApplicationFlag flags;
 | 
						|
} FlipperInternalApplication;
 | 
						|
 | 
						|
typedef void (*FlipperInternalOnStartHook)(void);
 | 
						|
 | 
						|
extern const char* FLIPPER_AUTORUN_APP_NAME;
 | 
						|
 | 
						|
/* Services list
 | 
						|
 * Spawned on startup
 | 
						|
 */
 | 
						|
extern const FlipperInternalApplication FLIPPER_SERVICES[];
 | 
						|
extern const size_t FLIPPER_SERVICES_COUNT;
 | 
						|
 | 
						|
/* Apps list
 | 
						|
 * Spawned by loader
 | 
						|
 */
 | 
						|
extern const FlipperInternalApplication FLIPPER_APPS[];
 | 
						|
extern const size_t FLIPPER_APPS_COUNT;
 | 
						|
 | 
						|
/* On system start hooks
 | 
						|
 * Called by loader, after OS initialization complete
 | 
						|
 */
 | 
						|
extern const FlipperInternalOnStartHook FLIPPER_ON_SYSTEM_START[];
 | 
						|
extern const size_t FLIPPER_ON_SYSTEM_START_COUNT;
 | 
						|
 | 
						|
/* System apps
 | 
						|
 * Can only be spawned by loader by name
 | 
						|
 */
 | 
						|
extern const FlipperInternalApplication FLIPPER_SYSTEM_APPS[];
 | 
						|
extern const size_t FLIPPER_SYSTEM_APPS_COUNT;
 | 
						|
 | 
						|
extern const FlipperInternalApplication FLIPPER_ARCHIVE;
 | 
						|
 | 
						|
/* Settings list
 | 
						|
 * Spawned by loader
 | 
						|
 */
 | 
						|
extern const FlipperInternalApplication FLIPPER_SETTINGS_APPS[];
 | 
						|
extern const size_t FLIPPER_SETTINGS_APPS_COUNT;
 |