mass_storage_scene_file_select.c 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include "../mass_storage_app_i.h"
  2. #include "furi_hal_power.h"
  3. #include <mass_storage_icons.h>
  4. static bool mass_storage_file_select(MassStorageApp* mass_storage) {
  5. furi_assert(mass_storage);
  6. DialogsFileBrowserOptions browser_options;
  7. dialog_file_browser_set_basic_options(
  8. &browser_options, MASS_STORAGE_APP_EXTENSION, &I_mass_storage_10px);
  9. browser_options.base_path = MASS_STORAGE_APP_PATH_FOLDER;
  10. browser_options.hide_ext = false;
  11. // Input events and views are managed by file_select
  12. bool res = dialog_file_browser_show(
  13. mass_storage->dialogs, mass_storage->file_path, mass_storage->file_path, &browser_options);
  14. return res;
  15. }
  16. void mass_storage_scene_file_select_on_enter(void* context) {
  17. MassStorageApp* mass_storage = context;
  18. if(mass_storage_file_select(mass_storage)) {
  19. scene_manager_next_scene(mass_storage->scene_manager, MassStorageSceneWork);
  20. } else {
  21. scene_manager_previous_scene(mass_storage->scene_manager);
  22. }
  23. }
  24. bool mass_storage_scene_file_select_on_event(void* context, SceneManagerEvent event) {
  25. UNUSED(context);
  26. UNUSED(event);
  27. // MassStorageApp* mass_storage = context;
  28. return false;
  29. }
  30. void mass_storage_scene_file_select_on_exit(void* context) {
  31. UNUSED(context);
  32. }