297f185ef4
* invalidate memmgt thread dict * Core: rollback memmgt thread dict invalidation * Dialogs: move api lock to toolbox * HAL: blocking usb API * HAL usb: fix api return data * HAL usb: api optimization * api lock: test results * Fix build errors * DAP Link: fix imports * Crash when malloc in ISR * Fix dap-link copypaste error * Moar memory management crashes. * Crash when malloc in IRQ, not ISR * USB-UART: Blocking VCP mode switch Co-authored-by: nminaylov <nm29719@gmail.com> Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
50 lines
1007 B
C
50 lines
1007 B
C
#pragma once
|
|
#include <furi.h>
|
|
#include "dialogs_i.h"
|
|
#include <toolbox/api_lock.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct {
|
|
const char* extension;
|
|
bool skip_assets;
|
|
bool hide_ext;
|
|
const Icon* file_icon;
|
|
FuriString* result_path;
|
|
FuriString* preselected_filename;
|
|
FileBrowserLoadItemCallback item_callback;
|
|
void* item_callback_context;
|
|
} DialogsAppMessageDataFileBrowser;
|
|
|
|
typedef struct {
|
|
const DialogMessage* message;
|
|
} DialogsAppMessageDataDialog;
|
|
|
|
typedef union {
|
|
DialogsAppMessageDataFileBrowser file_browser;
|
|
DialogsAppMessageDataDialog dialog;
|
|
} DialogsAppData;
|
|
|
|
typedef union {
|
|
bool bool_value;
|
|
DialogMessageButton dialog_value;
|
|
} DialogsAppReturn;
|
|
|
|
typedef enum {
|
|
DialogsAppCommandFileBrowser,
|
|
DialogsAppCommandDialog,
|
|
} DialogsAppCommand;
|
|
|
|
typedef struct {
|
|
FuriApiLock lock;
|
|
DialogsAppCommand command;
|
|
DialogsAppData* data;
|
|
DialogsAppReturn* return_data;
|
|
} DialogsAppMessage;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|