bad_usb_scene_file_select.c 1008 B

123456789101112131415161718192021222324252627282930313233343536
  1. #include "../bad_usb_app_i.h"
  2. #include "furi_hal_power.h"
  3. static bool bad_usb_file_select(BadUsbApp* bad_usb) {
  4. furi_assert(bad_usb);
  5. // Input events and views are managed by file_select
  6. bool res = dialog_file_select_show(
  7. bad_usb->dialogs,
  8. BAD_USB_APP_PATH_FOLDER,
  9. BAD_USB_APP_EXTENSION,
  10. bad_usb->file_name,
  11. sizeof(bad_usb->file_name),
  12. NULL);
  13. return res;
  14. }
  15. void bad_usb_scene_file_select_on_enter(void* context) {
  16. BadUsbApp* bad_usb = context;
  17. if(bad_usb_file_select(bad_usb)) {
  18. scene_manager_next_scene(bad_usb->scene_manager, BadUsbSceneWork);
  19. } else {
  20. //scene_manager_previous_scene(bad_usb->scene_manager);
  21. view_dispatcher_stop(bad_usb->view_dispatcher);
  22. }
  23. }
  24. bool bad_usb_scene_file_select_on_event(void* context, SceneManagerEvent event) {
  25. // BadUsbApp* bad_usb = context;
  26. return false;
  27. }
  28. void bad_usb_scene_file_select_on_exit(void* context) {
  29. // BadUsbApp* bad_usb = context;
  30. }