[FL-2651, FL-2863] App name in CLI loader command, RFID data edit fix #1835
Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
		
							parent
							
								
									38a82a1907
								
							
						
					
					
						commit
						1f742b611a
					
				| @ -54,7 +54,7 @@ static void gpio_usb_uart_draw_callback(Canvas* canvas, void* _model) { | |||||||
|         canvas_draw_str_aligned(canvas, 116, 24, AlignRight, AlignBottom, temp_str); |         canvas_draw_str_aligned(canvas, 116, 24, AlignRight, AlignBottom, temp_str); | ||||||
|     } else { |     } else { | ||||||
|         canvas_set_font(canvas, FontSecondary); |         canvas_set_font(canvas, FontSecondary); | ||||||
|         canvas_draw_str_aligned(canvas, 127, 24, AlignRight, AlignBottom, "KB."); |         canvas_draw_str_aligned(canvas, 127, 24, AlignRight, AlignBottom, "KiB."); | ||||||
|         canvas_set_font(canvas, FontKeyboard); |         canvas_set_font(canvas, FontKeyboard); | ||||||
|         snprintf(temp_str, 18, "%lu", model->tx_cnt / 1024); |         snprintf(temp_str, 18, "%lu", model->tx_cnt / 1024); | ||||||
|         canvas_draw_str_aligned(canvas, 111, 24, AlignRight, AlignBottom, temp_str); |         canvas_draw_str_aligned(canvas, 111, 24, AlignRight, AlignBottom, temp_str); | ||||||
| @ -68,7 +68,7 @@ static void gpio_usb_uart_draw_callback(Canvas* canvas, void* _model) { | |||||||
|         canvas_draw_str_aligned(canvas, 116, 41, AlignRight, AlignBottom, temp_str); |         canvas_draw_str_aligned(canvas, 116, 41, AlignRight, AlignBottom, temp_str); | ||||||
|     } else { |     } else { | ||||||
|         canvas_set_font(canvas, FontSecondary); |         canvas_set_font(canvas, FontSecondary); | ||||||
|         canvas_draw_str_aligned(canvas, 127, 41, AlignRight, AlignBottom, "KB."); |         canvas_draw_str_aligned(canvas, 127, 41, AlignRight, AlignBottom, "KiB."); | ||||||
|         canvas_set_font(canvas, FontKeyboard); |         canvas_set_font(canvas, FontKeyboard); | ||||||
|         snprintf(temp_str, 18, "%lu", model->rx_cnt / 1024); |         snprintf(temp_str, 18, "%lu", model->rx_cnt / 1024); | ||||||
|         canvas_draw_str_aligned(canvas, 111, 41, AlignRight, AlignBottom, temp_str); |         canvas_draw_str_aligned(canvas, 111, 41, AlignRight, AlignBottom, temp_str); | ||||||
|  | |||||||
| @ -9,14 +9,11 @@ void lfrfid_scene_save_data_on_enter(void* context) { | |||||||
| 
 | 
 | ||||||
|     bool need_restore = scene_manager_get_scene_state(app->scene_manager, LfRfidSceneSaveData); |     bool need_restore = scene_manager_get_scene_state(app->scene_manager, LfRfidSceneSaveData); | ||||||
| 
 | 
 | ||||||
|     if(need_restore) { |     if(!need_restore) { | ||||||
|         protocol_dict_set_data(app->dict, app->protocol_id, app->old_key_data, size); |  | ||||||
|     } else { |  | ||||||
|         protocol_dict_get_data(app->dict, app->protocol_id, app->old_key_data, size); |         protocol_dict_get_data(app->dict, app->protocol_id, app->old_key_data, size); | ||||||
|  |         protocol_dict_get_data(app->dict, app->protocol_id, app->new_key_data, size); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     protocol_dict_get_data(app->dict, app->protocol_id, app->new_key_data, size); |  | ||||||
| 
 |  | ||||||
|     byte_input_set_header_text(byte_input, "Enter the data in hex"); |     byte_input_set_header_text(byte_input, "Enter the data in hex"); | ||||||
| 
 | 
 | ||||||
|     byte_input_set_result_callback( |     byte_input_set_result_callback( | ||||||
| @ -41,6 +38,8 @@ bool lfrfid_scene_save_data_on_event(void* context, SceneManagerEvent event) { | |||||||
|         } |         } | ||||||
|     } else if(event.type == SceneManagerEventTypeBack) { |     } else if(event.type == SceneManagerEventTypeBack) { | ||||||
|         scene_manager_set_scene_state(scene_manager, LfRfidSceneSaveData, 0); |         scene_manager_set_scene_state(scene_manager, LfRfidSceneSaveData, 0); | ||||||
|  |         size_t size = protocol_dict_get_data_size(app->dict, app->protocol_id); | ||||||
|  |         protocol_dict_set_data(app->dict, app->protocol_id, app->old_key_data, size); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     return consumed; |     return consumed; | ||||||
|  | |||||||
| @ -5,6 +5,9 @@ void lfrfid_scene_save_success_on_enter(void* context) { | |||||||
|     LfRfid* app = context; |     LfRfid* app = context; | ||||||
|     Popup* popup = app->popup; |     Popup* popup = app->popup; | ||||||
| 
 | 
 | ||||||
|  |     // Clear state of data enter scene
 | ||||||
|  |     scene_manager_set_scene_state(app->scene_manager, LfRfidSceneSaveData, 0); | ||||||
|  | 
 | ||||||
|     DOLPHIN_DEED(DolphinDeedRfidSave); |     DOLPHIN_DEED(DolphinDeedRfidSave); | ||||||
|     popup_set_icon(popup, 32, 5, &I_DolphinNice_96x59); |     popup_set_icon(popup, 32, 5, &I_DolphinNice_96x59); | ||||||
|     popup_set_header(popup, "Saved!", 5, 7, AlignLeft, AlignTop); |     popup_set_header(popup, "Saved!", 5, 7, AlignLeft, AlignTop); | ||||||
|  | |||||||
| @ -61,6 +61,7 @@ static void loader_cli_print_usage() { | |||||||
|     printf("Cmd list:\r\n"); |     printf("Cmd list:\r\n"); | ||||||
|     printf("\tlist\t - List available applications\r\n"); |     printf("\tlist\t - List available applications\r\n"); | ||||||
|     printf("\topen <Application Name:string>\t - Open application by name\r\n"); |     printf("\topen <Application Name:string>\t - Open application by name\r\n"); | ||||||
|  |     printf("\tinfo\t - Show loader state\r\n"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static FlipperApplication const* loader_find_application_by_name_in_list( | static FlipperApplication const* loader_find_application_by_name_in_list( | ||||||
| @ -98,10 +99,15 @@ const FlipperApplication* loader_find_application_by_name(const char* name) { | |||||||
|     return application; |     return application; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void loader_cli_open(Cli* cli, FuriString* args, Loader* instance) { | static void loader_cli_open(Cli* cli, FuriString* args, Loader* instance) { | ||||||
|     UNUSED(cli); |     UNUSED(cli); | ||||||
|     if(loader_is_locked(instance)) { |     if(loader_is_locked(instance)) { | ||||||
|         printf("Can't start, furi application is running"); |         if(instance->application) { | ||||||
|  |             furi_assert(instance->application->name); | ||||||
|  |             printf("Can't start, %s application is running", instance->application->name); | ||||||
|  |         } else { | ||||||
|  |             printf("Can't start, furi application is running"); | ||||||
|  |         } | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| @ -137,7 +143,7 @@ void loader_cli_open(Cli* cli, FuriString* args, Loader* instance) { | |||||||
|     furi_string_free(application_name); |     furi_string_free(application_name); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void loader_cli_list(Cli* cli, FuriString* args, Loader* instance) { | static void loader_cli_list(Cli* cli, FuriString* args, Loader* instance) { | ||||||
|     UNUSED(cli); |     UNUSED(cli); | ||||||
|     UNUSED(args); |     UNUSED(args); | ||||||
|     UNUSED(instance); |     UNUSED(instance); | ||||||
| @ -159,6 +165,22 @@ void loader_cli_list(Cli* cli, FuriString* args, Loader* instance) { | |||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | static void loader_cli_info(Cli* cli, FuriString* args, Loader* instance) { | ||||||
|  |     UNUSED(cli); | ||||||
|  |     UNUSED(args); | ||||||
|  |     if(!loader_is_locked(instance)) { | ||||||
|  |         printf("No application is running\r\n"); | ||||||
|  |     } else { | ||||||
|  |         printf("Running application: "); | ||||||
|  |         if(instance->application) { | ||||||
|  |             furi_assert(instance->application->name); | ||||||
|  |             printf("%s\r\n", instance->application->name); | ||||||
|  |         } else { | ||||||
|  |             printf("unknown\r\n"); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| static void loader_cli(Cli* cli, FuriString* args, void* _ctx) { | static void loader_cli(Cli* cli, FuriString* args, void* _ctx) { | ||||||
|     furi_assert(_ctx); |     furi_assert(_ctx); | ||||||
|     Loader* instance = _ctx; |     Loader* instance = _ctx; | ||||||
| @ -182,6 +204,11 @@ static void loader_cli(Cli* cli, FuriString* args, void* _ctx) { | |||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         if(furi_string_cmp_str(cmd, "info") == 0) { | ||||||
|  |             loader_cli_info(cli, args, instance); | ||||||
|  |             break; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         loader_cli_print_usage(); |         loader_cli_print_usage(); | ||||||
|     } while(false); |     } while(false); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -52,7 +52,7 @@ static void storage_cli_info(Cli* cli, FuriString* path) { | |||||||
|             storage_cli_print_error(error); |             storage_cli_print_error(error); | ||||||
|         } else { |         } else { | ||||||
|             printf( |             printf( | ||||||
|                 "Label: %s\r\nType: LittleFS\r\n%luKB total\r\n%luKB free\r\n", |                 "Label: %s\r\nType: LittleFS\r\n%luKiB total\r\n%luKiB free\r\n", | ||||||
|                 furi_hal_version_get_name_ptr() ? furi_hal_version_get_name_ptr() : "Unknown", |                 furi_hal_version_get_name_ptr() ? furi_hal_version_get_name_ptr() : "Unknown", | ||||||
|                 (uint32_t)(total_space / 1024), |                 (uint32_t)(total_space / 1024), | ||||||
|                 (uint32_t)(free_space / 1024)); |                 (uint32_t)(free_space / 1024)); | ||||||
| @ -65,7 +65,7 @@ static void storage_cli_info(Cli* cli, FuriString* path) { | |||||||
|             storage_cli_print_error(error); |             storage_cli_print_error(error); | ||||||
|         } else { |         } else { | ||||||
|             printf( |             printf( | ||||||
|                 "Label: %s\r\nType: %s\r\n%luKB total\r\n%luKB free\r\n", |                 "Label: %s\r\nType: %s\r\n%luKiB total\r\n%luKiB free\r\n", | ||||||
|                 sd_info.label, |                 sd_info.label, | ||||||
|                 sd_api_get_fs_type_text(sd_info.fs_type), |                 sd_api_get_fs_type_text(sd_info.fs_type), | ||||||
|                 sd_info.kb_total, |                 sd_info.kb_total, | ||||||
| @ -364,7 +364,7 @@ static void storage_cli_stat(Cli* cli, FuriString* path) { | |||||||
|             storage_cli_print_error(error); |             storage_cli_print_error(error); | ||||||
|         } else { |         } else { | ||||||
|             printf( |             printf( | ||||||
|                 "Storage, %luKB total, %luKB free\r\n", |                 "Storage, %luKiB total, %luKiB free\r\n", | ||||||
|                 (uint32_t)(total_space / 1024), |                 (uint32_t)(total_space / 1024), | ||||||
|                 (uint32_t)(free_space / 1024)); |                 (uint32_t)(free_space / 1024)); | ||||||
|         } |         } | ||||||
|  | |||||||
| @ -27,7 +27,7 @@ void storage_settings_scene_internal_info_on_enter(void* context) { | |||||||
|     } else { |     } else { | ||||||
|         furi_string_printf( |         furi_string_printf( | ||||||
|             app->text_string, |             app->text_string, | ||||||
|             "Label: %s\nType: LittleFS\n%lu KB total\n%lu KB free", |             "Label: %s\nType: LittleFS\n%lu KiB total\n%lu KiB free", | ||||||
|             furi_hal_version_get_name_ptr() ? furi_hal_version_get_name_ptr() : "Unknown", |             furi_hal_version_get_name_ptr() ? furi_hal_version_get_name_ptr() : "Unknown", | ||||||
|             (uint32_t)(total_space / 1024), |             (uint32_t)(total_space / 1024), | ||||||
|             (uint32_t)(free_space / 1024)); |             (uint32_t)(free_space / 1024)); | ||||||
|  | |||||||
| @ -26,7 +26,7 @@ void storage_settings_scene_sd_info_on_enter(void* context) { | |||||||
|     } else { |     } else { | ||||||
|         furi_string_printf( |         furi_string_printf( | ||||||
|             app->text_string, |             app->text_string, | ||||||
|             "Label: %s\nType: %s\n%lu KB total\n%lu KB free", |             "Label: %s\nType: %s\n%lu KiB total\n%lu KiB free", | ||||||
|             sd_info.label, |             sd_info.label, | ||||||
|             sd_api_get_fs_type_text(sd_info.fs_type), |             sd_api_get_fs_type_text(sd_info.fs_type), | ||||||
|             sd_info.kb_total, |             sd_info.kb_total, | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Nikolay Minaylov
						Nikolay Minaylov