[FL-2229] New assets paths (#978)
* assets: change resources paths * apps: rework nfc, irda and subghz with new assets path * subghz: remove unused paths * subghz: fix incorrect path * badusb and u2f fix Co-authored-by: あく <alleteam@gmail.com> Co-authored-by: nminaylov <nm29719@gmail.com>
This commit is contained in:
		
							parent
							
								
									d2c4f15af5
								
							
						
					
					
						commit
						838df4c9ea
					
				| @ -8,7 +8,7 @@ static const char* tab_default_paths[] = { | |||||||
|     [ArchiveTabFavorites] = "/any/favorites", |     [ArchiveTabFavorites] = "/any/favorites", | ||||||
|     [ArchiveTabIButton] = "/any/ibutton", |     [ArchiveTabIButton] = "/any/ibutton", | ||||||
|     [ArchiveTabNFC] = "/any/nfc", |     [ArchiveTabNFC] = "/any/nfc", | ||||||
|     [ArchiveTabSubGhz] = "/any/subghz/saved", |     [ArchiveTabSubGhz] = "/any/subghz", | ||||||
|     [ArchiveTabLFRFID] = "/any/lfrfid", |     [ArchiveTabLFRFID] = "/any/lfrfid", | ||||||
|     [ArchiveTabIrda] = "/any/irda", |     [ArchiveTabIrda] = "/any/irda", | ||||||
|     [ArchiveTabBrowser] = "/any", |     [ArchiveTabBrowser] = "/any", | ||||||
|  | |||||||
| @ -19,7 +19,7 @@ void bad_usb_scene_file_select_on_enter(void* context) { | |||||||
|     BadUsbApp* bad_usb = context; |     BadUsbApp* bad_usb = context; | ||||||
| 
 | 
 | ||||||
|     if(bad_usb_file_select(bad_usb)) { |     if(bad_usb_file_select(bad_usb)) { | ||||||
|         scene_manager_next_scene(bad_usb->scene_manager, BadUsbAppViewWork); |         scene_manager_next_scene(bad_usb->scene_manager, BadUsbSceneWork); | ||||||
|     } else { |     } else { | ||||||
|         //scene_manager_previous_scene(bad_usb->scene_manager);
 |         //scene_manager_previous_scene(bad_usb->scene_manager);
 | ||||||
|         view_dispatcher_stop(bad_usb->view_dispatcher); |         view_dispatcher_stop(bad_usb->view_dispatcher); | ||||||
|  | |||||||
| @ -159,7 +159,7 @@ class IrdaAppSceneUniversalTV : public IrdaAppSceneUniversalCommon { | |||||||
| public: | public: | ||||||
|     void on_enter(IrdaApp* app) final; |     void on_enter(IrdaApp* app) final; | ||||||
|     IrdaAppSceneUniversalTV() |     IrdaAppSceneUniversalTV() | ||||||
|         : IrdaAppSceneUniversalCommon("/ext/irda/universal/tv.ir") { |         : IrdaAppSceneUniversalCommon("/ext/irda/assets/tv.ir") { | ||||||
|     } |     } | ||||||
|     ~IrdaAppSceneUniversalTV() { |     ~IrdaAppSceneUniversalTV() { | ||||||
|     } |     } | ||||||
| @ -169,7 +169,7 @@ class IrdaAppSceneUniversalAudio : public IrdaAppSceneUniversalCommon { | |||||||
| public: | public: | ||||||
|     void on_enter(IrdaApp* app) final; |     void on_enter(IrdaApp* app) final; | ||||||
|     IrdaAppSceneUniversalAudio() |     IrdaAppSceneUniversalAudio() | ||||||
|         : IrdaAppSceneUniversalCommon("/ext/irda/universal/audio.ir") { |         : IrdaAppSceneUniversalCommon("/ext/irda/assets/audio.ir") { | ||||||
|     } |     } | ||||||
|     ~IrdaAppSceneUniversalAudio() { |     ~IrdaAppSceneUniversalAudio() { | ||||||
|     } |     } | ||||||
|  | |||||||
| @ -44,7 +44,7 @@ bool nfc_emv_parser_get_aid_name( | |||||||
|     for(uint8_t i = 0; i < aid_len; i++) { |     for(uint8_t i = 0; i < aid_len; i++) { | ||||||
|         string_cat_printf(key, "%02X", aid[i]); |         string_cat_printf(key, "%02X", aid[i]); | ||||||
|     } |     } | ||||||
|     if(nfc_emv_parser_search_data(storage, "/ext/nfc/emv/aid.nfc", key, aid_name)) { |     if(nfc_emv_parser_search_data(storage, "/ext/nfc/assets/aid.nfc", key, aid_name)) { | ||||||
|         parsed = true; |         parsed = true; | ||||||
|     } |     } | ||||||
|     string_clear(key); |     string_clear(key); | ||||||
| @ -58,7 +58,7 @@ bool nfc_emv_parser_get_country_name( | |||||||
|     bool parsed = false; |     bool parsed = false; | ||||||
|     string_t key; |     string_t key; | ||||||
|     string_init_printf(key, "%04X", country_code); |     string_init_printf(key, "%04X", country_code); | ||||||
|     if(nfc_emv_parser_search_data(storage, "/ext/nfc/emv/country_code.nfc", key, country_name)) { |     if(nfc_emv_parser_search_data(storage, "/ext/nfc/assets/country_code.nfc", key, country_name)) { | ||||||
|         parsed = true; |         parsed = true; | ||||||
|     } |     } | ||||||
|     string_clear(key); |     string_clear(key); | ||||||
| @ -72,7 +72,8 @@ bool nfc_emv_parser_get_currency_name( | |||||||
|     bool parsed = false; |     bool parsed = false; | ||||||
|     string_t key; |     string_t key; | ||||||
|     string_init_printf(key, "%04X", currency_code); |     string_init_printf(key, "%04X", currency_code); | ||||||
|     if(nfc_emv_parser_search_data(storage, "/ext/nfc/emv/currency_code.nfc", key, currency_name)) { |     if(nfc_emv_parser_search_data( | ||||||
|  |            storage, "/ext/nfc/assets/currency_code.nfc", key, currency_name)) { | ||||||
|         parsed = true; |         parsed = true; | ||||||
|     } |     } | ||||||
|     string_clear(key); |     string_clear(key); | ||||||
|  | |||||||
| @ -23,7 +23,7 @@ bool subghz_scene_read_raw_update_filename(SubGhz* subghz) { | |||||||
|         path_extract_filename_no_ext(string_get_cstr(temp_str), temp_str); |         path_extract_filename_no_ext(string_get_cstr(temp_str), temp_str); | ||||||
|         strcpy(subghz->file_name, string_get_cstr(temp_str)); |         strcpy(subghz->file_name, string_get_cstr(temp_str)); | ||||||
|         string_printf( |         string_printf( | ||||||
|             temp_str, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); |             temp_str, "%s/%s%s", SUBGHZ_APP_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); | ||||||
| 
 | 
 | ||||||
|         subghz_protocol_raw_set_last_file_name( |         subghz_protocol_raw_set_last_file_name( | ||||||
|             (SubGhzProtocolRAW*)subghz->txrx->protocol_result, string_get_cstr(temp_str)); |             (SubGhzProtocolRAW*)subghz->txrx->protocol_result, string_get_cstr(temp_str)); | ||||||
|  | |||||||
| @ -39,7 +39,7 @@ void subghz_scene_save_name_on_enter(void* context) { | |||||||
|         dev_name_empty); |         dev_name_empty); | ||||||
| 
 | 
 | ||||||
|     ValidatorIsFile* validator_is_file = |     ValidatorIsFile* validator_is_file = | ||||||
|         validator_is_file_alloc_init(SUBGHZ_APP_PATH_FOLDER, SUBGHZ_APP_EXTENSION); |         validator_is_file_alloc_init(SUBGHZ_APP_FOLDER, SUBGHZ_APP_EXTENSION); | ||||||
|     text_input_set_validator(text_input, validator_is_file_callback, validator_is_file); |     text_input_set_validator(text_input, validator_is_file_callback, validator_is_file); | ||||||
| 
 | 
 | ||||||
|     view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewTextInput); |     view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewTextInput); | ||||||
|  | |||||||
| @ -284,10 +284,10 @@ int32_t subghz_app(void* p) { | |||||||
| 
 | 
 | ||||||
|     //Load database
 |     //Load database
 | ||||||
|     bool load_database = |     bool load_database = | ||||||
|         subghz_parser_load_keeloq_file(subghz->txrx->parser, "/ext/subghz/keeloq_mfcodes"); |         subghz_parser_load_keeloq_file(subghz->txrx->parser, "/ext/subghz/assets/keeloq_mfcodes"); | ||||||
|     subghz_parser_load_keeloq_file(subghz->txrx->parser, "/ext/subghz/keeloq_mfcodes_user"); |     subghz_parser_load_keeloq_file(subghz->txrx->parser, "/ext/subghz/assets/keeloq_mfcodes_user"); | ||||||
|     subghz_parser_load_nice_flor_s_file(subghz->txrx->parser, "/ext/subghz/nice_flor_s_rx"); |     subghz_parser_load_nice_flor_s_file(subghz->txrx->parser, "/ext/subghz/assets/nice_flor_s_rx"); | ||||||
|     subghz_parser_load_came_atomo_file(subghz->txrx->parser, "/ext/subghz/came_atomo"); |     subghz_parser_load_came_atomo_file(subghz->txrx->parser, "/ext/subghz/assets/came_atomo"); | ||||||
| 
 | 
 | ||||||
|     // Check argument and run corresponding scene
 |     // Check argument and run corresponding scene
 | ||||||
|     if(p && subghz_key_load(subghz, p)) { |     if(p && subghz_key_load(subghz, p)) { | ||||||
|  | |||||||
| @ -215,10 +215,10 @@ void subghz_cli_command_rx(Cli* cli, string_t args, void* context) { | |||||||
|     furi_check(instance->stream); |     furi_check(instance->stream); | ||||||
| 
 | 
 | ||||||
|     SubGhzParser* parser = subghz_parser_alloc(); |     SubGhzParser* parser = subghz_parser_alloc(); | ||||||
|     subghz_parser_load_keeloq_file(parser, "/ext/subghz/keeloq_mfcodes"); |     subghz_parser_load_keeloq_file(parser, "/ext/subghz/assets/keeloq_mfcodes"); | ||||||
|     subghz_parser_load_keeloq_file(parser, "/ext/subghz/keeloq_mfcodes_user"); |     subghz_parser_load_keeloq_file(parser, "/ext/subghz/assets/keeloq_mfcodes_user"); | ||||||
|     subghz_parser_load_nice_flor_s_file(parser, "/ext/subghz/nice_flor_s_rx"); |     subghz_parser_load_nice_flor_s_file(parser, "/ext/subghz/assets/nice_flor_s_rx"); | ||||||
|     subghz_parser_load_came_atomo_file(parser, "/ext/subghz/came_atomo"); |     subghz_parser_load_came_atomo_file(parser, "/ext/subghz/assets/came_atomo"); | ||||||
|     subghz_parser_enable_dump_text(parser, subghz_cli_command_rx_text_callback, instance); |     subghz_parser_enable_dump_text(parser, subghz_cli_command_rx_text_callback, instance); | ||||||
| 
 | 
 | ||||||
|     // Configure radio
 |     // Configure radio
 | ||||||
|  | |||||||
							
								
								
									
										20
									
								
								applications/subghz/subghz_i.c
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										20
									
								
								applications/subghz/subghz_i.c
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @ -284,7 +284,7 @@ bool subghz_get_next_name_file(SubGhz* subghz) { | |||||||
|     if(strcmp(subghz->file_name, "")) { |     if(strcmp(subghz->file_name, "")) { | ||||||
|         //get the name of the next free file
 |         //get the name of the next free file
 | ||||||
|         storage_get_next_filename( |         storage_get_next_filename( | ||||||
|             storage, SUBGHZ_RAW_PATH_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION, temp_str); |             storage, SUBGHZ_RAW_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION, temp_str); | ||||||
| 
 | 
 | ||||||
|         strcpy(subghz->file_name, string_get_cstr(temp_str)); |         strcpy(subghz->file_name, string_get_cstr(temp_str)); | ||||||
|         res = true; |         res = true; | ||||||
| @ -319,15 +319,9 @@ bool subghz_save_protocol_to_file(SubGhz* subghz, const char* dev_name) { | |||||||
|             dialog_message_show_storage_error(subghz->dialogs, "Cannot create\nfolder"); |             dialog_message_show_storage_error(subghz->dialogs, "Cannot create\nfolder"); | ||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|         // Create saved directory if necessary
 |  | ||||||
|         if(!storage_simply_mkdir(storage, SUBGHZ_APP_PATH_FOLDER)) { |  | ||||||
|             dialog_message_show_storage_error(subghz->dialogs, "Cannot create\nfolder"); |  | ||||||
|             break; |  | ||||||
|         } |  | ||||||
| 
 | 
 | ||||||
|         // First remove subghz device file if it was saved
 |         // First remove subghz device file if it was saved
 | ||||||
|         string_printf( |         string_printf(dev_file_name, "%s/%s%s", SUBGHZ_APP_FOLDER, dev_name, SUBGHZ_APP_EXTENSION); | ||||||
|             dev_file_name, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, dev_name, SUBGHZ_APP_EXTENSION); |  | ||||||
| 
 | 
 | ||||||
|         if(!storage_simply_remove(storage, string_get_cstr(dev_file_name))) { |         if(!storage_simply_remove(storage, string_get_cstr(dev_file_name))) { | ||||||
|             break; |             break; | ||||||
| @ -386,7 +380,7 @@ bool subghz_load_protocol_from_file(SubGhz* subghz) { | |||||||
|     // Input events and views are managed by file_select
 |     // Input events and views are managed by file_select
 | ||||||
|     bool res = dialog_file_select_show( |     bool res = dialog_file_select_show( | ||||||
|         subghz->dialogs, |         subghz->dialogs, | ||||||
|         SUBGHZ_APP_PATH_FOLDER, |         SUBGHZ_APP_FOLDER, | ||||||
|         SUBGHZ_APP_EXTENSION, |         SUBGHZ_APP_EXTENSION, | ||||||
|         subghz->file_name, |         subghz->file_name, | ||||||
|         sizeof(subghz->file_name), |         sizeof(subghz->file_name), | ||||||
| @ -394,7 +388,7 @@ bool subghz_load_protocol_from_file(SubGhz* subghz) { | |||||||
| 
 | 
 | ||||||
|     if(res) { |     if(res) { | ||||||
|         string_printf( |         string_printf( | ||||||
|             file_name, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); |             file_name, "%s/%s%s", SUBGHZ_APP_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); | ||||||
| 
 | 
 | ||||||
|         res = subghz_key_load(subghz, string_get_cstr(file_name)); |         res = subghz_key_load(subghz, string_get_cstr(file_name)); | ||||||
|     } |     } | ||||||
| @ -413,10 +407,10 @@ bool subghz_rename_file(SubGhz* subghz) { | |||||||
|     Storage* storage = furi_record_open("storage"); |     Storage* storage = furi_record_open("storage"); | ||||||
| 
 | 
 | ||||||
|     string_init_printf( |     string_init_printf( | ||||||
|         old_path, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, subghz->file_name_tmp, SUBGHZ_APP_EXTENSION); |         old_path, "%s/%s%s", SUBGHZ_APP_FOLDER, subghz->file_name_tmp, SUBGHZ_APP_EXTENSION); | ||||||
| 
 | 
 | ||||||
|     string_init_printf( |     string_init_printf( | ||||||
|         new_path, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); |         new_path, "%s/%s%s", SUBGHZ_APP_FOLDER, subghz->file_name, SUBGHZ_APP_EXTENSION); | ||||||
| 
 | 
 | ||||||
|     FS_Error fs_result = |     FS_Error fs_result = | ||||||
|         storage_common_rename(storage, string_get_cstr(old_path), string_get_cstr(new_path)); |         storage_common_rename(storage, string_get_cstr(old_path), string_get_cstr(new_path)); | ||||||
| @ -439,7 +433,7 @@ bool subghz_delete_file(SubGhz* subghz) { | |||||||
|     Storage* storage = furi_record_open("storage"); |     Storage* storage = furi_record_open("storage"); | ||||||
|     string_t file_path; |     string_t file_path; | ||||||
|     string_init_printf( |     string_init_printf( | ||||||
|         file_path, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, subghz->file_name_tmp, SUBGHZ_APP_EXTENSION); |         file_path, "%s/%s%s", SUBGHZ_APP_FOLDER, subghz->file_name_tmp, SUBGHZ_APP_EXTENSION); | ||||||
|     bool result = storage_simply_remove(storage, string_get_cstr(file_path)); |     bool result = storage_simply_remove(storage, string_get_cstr(file_path)); | ||||||
|     furi_record_close("storage"); |     furi_record_close("storage"); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -8,8 +8,8 @@ | |||||||
| #define TAG "U2F" | #define TAG "U2F" | ||||||
| 
 | 
 | ||||||
| #define U2F_DATA_FOLDER "/any/u2f/" | #define U2F_DATA_FOLDER "/any/u2f/" | ||||||
| #define U2F_CERT_FILE U2F_DATA_FOLDER "cert.der" | #define U2F_CERT_FILE U2F_DATA_FOLDER "assets/cert.der" | ||||||
| #define U2F_CERT_KEY_FILE U2F_DATA_FOLDER "cert_key.u2f" | #define U2F_CERT_KEY_FILE U2F_DATA_FOLDER "assets/cert_key.u2f" | ||||||
| #define U2F_KEY_FILE U2F_DATA_FOLDER "key.u2f" | #define U2F_KEY_FILE U2F_DATA_FOLDER "key.u2f" | ||||||
| #define U2F_CNT_FILE U2F_DATA_FOLDER "cnt.u2f" | #define U2F_CNT_FILE U2F_DATA_FOLDER "cnt.u2f" | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -15,9 +15,7 @@ | |||||||
| #define DURATION_DIFF(x, y) ((x < y) ? (y - x) : (x - y)) | #define DURATION_DIFF(x, y) ((x < y) ? (y - x) : (x - y)) | ||||||
| 
 | 
 | ||||||
| #define SUBGHZ_APP_FOLDER "/any/subghz" | #define SUBGHZ_APP_FOLDER "/any/subghz" | ||||||
| #define SUBGHZ_APP_PATH_FOLDER "/any/subghz/saved" |  | ||||||
| #define SUBGHZ_RAW_FOLDER "/ext/subghz" | #define SUBGHZ_RAW_FOLDER "/ext/subghz" | ||||||
| #define SUBGHZ_RAW_PATH_FOLDER "/ext/subghz/saved" |  | ||||||
| #define SUBGHZ_APP_EXTENSION ".sub" | #define SUBGHZ_APP_EXTENSION ".sub" | ||||||
| #define SUBGHZ_ENCODER_UPLOAD_MAX_SIZE 2048 | #define SUBGHZ_ENCODER_UPLOAD_MAX_SIZE 2048 | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										7
									
								
								lib/subghz/protocols/subghz_protocol_raw.c
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										7
									
								
								lib/subghz/protocols/subghz_protocol_raw.c
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @ -176,15 +176,10 @@ bool subghz_protocol_raw_save_to_file_init( | |||||||
|         if(!storage_simply_mkdir(instance->storage, SUBGHZ_RAW_FOLDER)) { |         if(!storage_simply_mkdir(instance->storage, SUBGHZ_RAW_FOLDER)) { | ||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|         // Create saved directory if necessary
 |  | ||||||
|         if(!storage_simply_mkdir(instance->storage, SUBGHZ_RAW_PATH_FOLDER)) { |  | ||||||
|             break; |  | ||||||
|         } |  | ||||||
| 
 | 
 | ||||||
|         string_set(instance->file_name, dev_name); |         string_set(instance->file_name, dev_name); | ||||||
|         // First remove subghz device file if it was saved
 |         // First remove subghz device file if it was saved
 | ||||||
|         string_printf( |         string_printf(dev_file_name, "%s/%s%s", SUBGHZ_RAW_FOLDER, dev_name, SUBGHZ_APP_EXTENSION); | ||||||
|             dev_file_name, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, dev_name, SUBGHZ_APP_EXTENSION); |  | ||||||
| 
 | 
 | ||||||
|         if(!storage_simply_remove(instance->storage, string_get_cstr(dev_file_name))) { |         if(!storage_simply_remove(instance->storage, string_get_cstr(dev_file_name))) { | ||||||
|             break; |             break; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 gornekich
						gornekich