diff --git a/applications/services/loader/loader_cli.c b/applications/services/loader/loader_cli.c index af3ebf9e0..f5178f01e 100644 --- a/applications/services/loader/loader_cli.c +++ b/applications/services/loader/loader_cli.c @@ -18,6 +18,9 @@ static void loader_cli_list() { for(size_t i = 0; i < FLIPPER_APPS_COUNT; i++) { printf("\t%s\r\n", FLIPPER_APPS[i].name); } + for(size_t i = 0; i < FLIPPER_EXTERNAL_APPS_COUNT; i++) { + printf("\t%s\r\n", FLIPPER_EXTERNAL_APPS[i].name); + } printf("Settings:\r\n"); for(size_t i = 0; i < FLIPPER_SETTINGS_APPS_COUNT; i++) { printf("\t%s\r\n", FLIPPER_SETTINGS_APPS[i].name); @@ -104,4 +107,4 @@ void loader_on_system_start() { #else UNUSED(loader_cli); #endif -} \ No newline at end of file +} diff --git a/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action.c b/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action.c index 1663246db..49de99ae3 100644 --- a/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action.c +++ b/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action.c @@ -25,19 +25,6 @@ void desktop_settings_scene_keybinds_action_on_enter(void* context) { app->scene_manager, DesktopSettingsAppSceneKeybindsActionType); if(action_type == DesktopSettingsAppKeybindActionTypeMainApp) { - for(size_t i = 0; i < FLIPPER_EXTERNAL_APPS_COUNT; i++) { - submenu_add_item( - submenu, - FLIPPER_EXTERNAL_APPS[i].name, - (uint32_t)FLIPPER_EXTERNAL_APPS[i].name, - desktop_settings_scene_keybinds_action_submenu_callback, - app); - - // Select keybind item in submenu - if(!strncmp(FLIPPER_EXTERNAL_APPS[i].name, keybind, MAX_KEYBIND_LENGTH)) { - pre_select_item = (uint32_t)FLIPPER_EXTERNAL_APPS[i].name; - } - } for(size_t i = 0; i < FLIPPER_APPS_COUNT; i++) { submenu_add_item( submenu, @@ -51,6 +38,19 @@ void desktop_settings_scene_keybinds_action_on_enter(void* context) { pre_select_item = (uint32_t)FLIPPER_APPS[i].name; } } + for(size_t i = 0; i < FLIPPER_EXTERNAL_APPS_COUNT; i++) { + submenu_add_item( + submenu, + FLIPPER_EXTERNAL_APPS[i].name, + (uint32_t)FLIPPER_EXTERNAL_APPS[i].name, + desktop_settings_scene_keybinds_action_submenu_callback, + app); + + // Select keybind item in submenu + if(!strncmp(FLIPPER_EXTERNAL_APPS[i].name, keybind, MAX_KEYBIND_LENGTH)) { + pre_select_item = (uint32_t)FLIPPER_EXTERNAL_APPS[i].name; + } + } } else if(action_type == DesktopSettingsAppKeybindActionTypeMoreActions) { for(size_t i = 0; i < EXTRA_KEYBINDS_COUNT; i++) { submenu_add_item( diff --git a/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action_type.c b/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action_type.c index 9fd078f7e..5472fdbb1 100644 --- a/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action_type.c +++ b/applications/settings/desktop_settings/scenes/desktop_settings_scene_keybinds_action_type.c @@ -107,6 +107,11 @@ void desktop_settings_scene_keybinds_action_type_on_enter(void* context) { selected = DesktopSettingsAppKeybindActionTypeMainApp; } } + for(size_t i = 0; i < FLIPPER_EXTERNAL_APPS_COUNT; i++) { + if(!strncmp(FLIPPER_EXTERNAL_APPS[i].name, keybind, MAX_KEYBIND_LENGTH)) { + selected = DesktopSettingsAppKeybindActionTypeMainApp; + } + } if(storage_file_exists(furi_record_open(RECORD_STORAGE), keybind)) { selected = DesktopSettingsAppKeybindActionTypeExternalApp;