Settings: about screen (#715)
This commit is contained in:
		
							parent
							
								
									322bdf049d
								
							
						
					
					
						commit
						9b0aa0d6dc
					
				
							
								
								
									
										45
									
								
								applications/about/about.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								applications/about/about.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,45 @@ | |||||||
|  | #include <furi.h> | ||||||
|  | #include <dialogs/dialogs.h> | ||||||
|  | 
 | ||||||
|  | int32_t about_settings_app(void* p) { | ||||||
|  |     const char* first_screen_text = "Product: Flipper Zero\n" | ||||||
|  |                                     "Model: FZ.1\n" | ||||||
|  |                                     "FCC ID: 2A2V6-FZIC\n" | ||||||
|  |                                     "ID: 27624-FZ"; | ||||||
|  | 
 | ||||||
|  |     const char* second_screen_text = "Flipper Devices Inc\n" | ||||||
|  |                                      "Suite B #551, 2803\n" | ||||||
|  |                                      "Philadelphia Pike, Claymont\n" | ||||||
|  |                                      "DE, USA 19703\n"; | ||||||
|  | 
 | ||||||
|  |     const char* third_screen_text = "For all compliance\n" | ||||||
|  |                                     "certificates please visit\n" | ||||||
|  |                                     "www.flipp.dev/compliance"; | ||||||
|  | 
 | ||||||
|  |     DialogsApp* dialogs = furi_record_open("dialogs"); | ||||||
|  |     DialogMessage* message = dialog_message_alloc(); | ||||||
|  | 
 | ||||||
|  |     do { | ||||||
|  |         dialog_message_set_buttons(message, NULL, NULL, "Next"); | ||||||
|  | 
 | ||||||
|  |         dialog_message_set_text(message, first_screen_text, 0, 0, AlignLeft, AlignTop); | ||||||
|  |         if(dialog_message_show(dialogs, message) != DialogMessageButtonRight) break; | ||||||
|  | 
 | ||||||
|  |         dialog_message_set_text(message, second_screen_text, 0, 0, AlignLeft, AlignTop); | ||||||
|  |         if(dialog_message_show(dialogs, message) != DialogMessageButtonRight) break; | ||||||
|  | 
 | ||||||
|  |         dialog_message_set_text(message, third_screen_text, 0, 0, AlignLeft, AlignTop); | ||||||
|  |         if(dialog_message_show(dialogs, message) != DialogMessageButtonRight) break; | ||||||
|  | 
 | ||||||
|  |         dialog_message_set_text(message, NULL, 0, 0, AlignLeft, AlignTop); | ||||||
|  | 
 | ||||||
|  |         dialog_message_set_icon(message, &I_Certification_128x64, 0, 0); | ||||||
|  |         dialog_message_set_buttons(message, NULL, NULL, NULL); | ||||||
|  |         dialog_message_show(dialogs, message); | ||||||
|  |     } while(false); | ||||||
|  | 
 | ||||||
|  |     dialog_message_free(message); | ||||||
|  |     furi_record_close("dialogs"); | ||||||
|  | 
 | ||||||
|  |     return 0; | ||||||
|  | } | ||||||
| @ -51,6 +51,7 @@ extern void subghz_cli_init(); | |||||||
| extern int32_t notification_settings_app(void* p); | extern int32_t notification_settings_app(void* p); | ||||||
| extern int32_t storage_settings_app(void* p); | extern int32_t storage_settings_app(void* p); | ||||||
| extern int32_t bt_settings_app(void* p); | extern int32_t bt_settings_app(void* p); | ||||||
|  | extern int32_t about_settings_app(void* p); | ||||||
| 
 | 
 | ||||||
| const FlipperApplication FLIPPER_SERVICES[] = { | const FlipperApplication FLIPPER_SERVICES[] = { | ||||||
| /* Services */ | /* Services */ | ||||||
| @ -268,6 +269,10 @@ const FlipperApplication FLIPPER_SETTINGS_APPS[] = { | |||||||
| #ifdef SRV_BT | #ifdef SRV_BT | ||||||
|     {.app = bt_settings_app, .name = "Bluetooth", .stack_size = 1024, .icon = NULL}, |     {.app = bt_settings_app, .name = "Bluetooth", .stack_size = 1024, .icon = NULL}, | ||||||
| #endif | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef APP_ABOUT | ||||||
|  |     {.app = about_settings_app, .name = "About", .stack_size = 1024, .icon = NULL}, | ||||||
|  | #endif | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| const size_t FLIPPER_SETTINGS_APPS_COUNT = | const size_t FLIPPER_SETTINGS_APPS_COUNT = | ||||||
|  | |||||||
| @ -32,6 +32,7 @@ APP_IRDA  = 1 | |||||||
| APP_LF_RFID = 1 | APP_LF_RFID = 1 | ||||||
| APP_NFC = 1 | APP_NFC = 1 | ||||||
| APP_SUBGHZ = 1 | APP_SUBGHZ = 1 | ||||||
|  | APP_ABOUT  = 1 | ||||||
| 
 | 
 | ||||||
| # Plugins
 | # Plugins
 | ||||||
| APP_MUSIC_PLAYER = 1 | APP_MUSIC_PLAYER = 1 | ||||||
| @ -138,6 +139,12 @@ SRV_GUI = 1 | |||||||
| SRV_CLI = 1 | SRV_CLI = 1 | ||||||
| endif | endif | ||||||
| 
 | 
 | ||||||
|  | ifeq ($(APP_ABOUT), 1) | ||||||
|  | CFLAGS		+= -DAPP_ABOUT | ||||||
|  | SRV_INPUT = 1 | ||||||
|  | SRV_GUI = 1 | ||||||
|  | endif | ||||||
|  | 
 | ||||||
| SRV_LF_RFID ?= 0 | SRV_LF_RFID ?= 0 | ||||||
| ifeq ($(SRV_LF_RFID), 1) | ifeq ($(SRV_LF_RFID), 1) | ||||||
| CFLAGS		+= -DSRV_LF_RFID | CFLAGS		+= -DSRV_LF_RFID | ||||||
|  | |||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @ -1,66 +1,67 @@ | |||||||
| #pragma once | #pragma once | ||||||
| #include <gui/icon.h> | #include <gui/icon.h> | ||||||
| 
 | 
 | ||||||
|  | extern const Icon I_Certification_128x64; | ||||||
| extern const Icon A_WatchingTV_128x64; | extern const Icon A_WatchingTV_128x64; | ||||||
| extern const Icon A_Wink_128x64; | extern const Icon A_Wink_128x64; | ||||||
|  | extern const Icon I_125_10px; | ||||||
|  | extern const Icon I_ble_10px; | ||||||
| extern const Icon I_dir_10px; | extern const Icon I_dir_10px; | ||||||
|  | extern const Icon I_ibutt_10px; | ||||||
|  | extern const Icon I_ir_10px; | ||||||
| extern const Icon I_Nfc_10px; | extern const Icon I_Nfc_10px; | ||||||
| extern const Icon I_sub1_10px; | extern const Icon I_sub1_10px; | ||||||
| extern const Icon I_ir_10px; |  | ||||||
| extern const Icon I_ibutt_10px; |  | ||||||
| extern const Icon I_unknown_10px; | extern const Icon I_unknown_10px; | ||||||
| extern const Icon I_ble_10px; | extern const Icon I_ButtonCenter_7x7; | ||||||
| extern const Icon I_125_10px; |  | ||||||
| extern const Icon I_ButtonRightSmall_3x5; |  | ||||||
| extern const Icon I_ButtonLeft_4x7; |  | ||||||
| extern const Icon I_ButtonLeftSmall_3x5; | extern const Icon I_ButtonLeftSmall_3x5; | ||||||
|  | extern const Icon I_ButtonLeft_4x7; | ||||||
|  | extern const Icon I_ButtonRightSmall_3x5; | ||||||
|  | extern const Icon I_ButtonRight_4x7; | ||||||
| extern const Icon I_DFU_128x50; | extern const Icon I_DFU_128x50; | ||||||
| extern const Icon I_Warning_30x23; | extern const Icon I_Warning_30x23; | ||||||
| extern const Icon I_ButtonRight_4x7; |  | ||||||
| extern const Icon I_ButtonCenter_7x7; |  | ||||||
| extern const Icon I_DolphinOkay_41x43; |  | ||||||
| extern const Icon I_DolphinFirstStart4_67x53; |  | ||||||
| extern const Icon I_DolphinFirstStart2_59x51; |  | ||||||
| extern const Icon I_DolphinFirstStart5_54x49; |  | ||||||
| extern const Icon I_DolphinFirstStart0_70x53; | extern const Icon I_DolphinFirstStart0_70x53; | ||||||
| extern const Icon I_DolphinFirstStart6_58x54; |  | ||||||
| extern const Icon I_DolphinFirstStart1_59x53; | extern const Icon I_DolphinFirstStart1_59x53; | ||||||
| extern const Icon I_DolphinFirstStart8_56x51; | extern const Icon I_DolphinFirstStart2_59x51; | ||||||
| extern const Icon I_DolphinFirstStart7_61x51; |  | ||||||
| extern const Icon I_Flipper_young_80x60; |  | ||||||
| extern const Icon I_DolphinFirstStart3_57x48; | extern const Icon I_DolphinFirstStart3_57x48; | ||||||
| extern const Icon I_PassportBottom_128x17; | extern const Icon I_DolphinFirstStart4_67x53; | ||||||
|  | extern const Icon I_DolphinFirstStart5_54x49; | ||||||
|  | extern const Icon I_DolphinFirstStart6_58x54; | ||||||
|  | extern const Icon I_DolphinFirstStart7_61x51; | ||||||
|  | extern const Icon I_DolphinFirstStart8_56x51; | ||||||
|  | extern const Icon I_DolphinOkay_41x43; | ||||||
|  | extern const Icon I_Flipper_young_80x60; | ||||||
|  | extern const Icon I_DoorLeft_70x55; | ||||||
| extern const Icon I_DoorLeft_8x56; | extern const Icon I_DoorLeft_8x56; | ||||||
| extern const Icon I_DoorLocked_10x56; | extern const Icon I_DoorLocked_10x56; | ||||||
| extern const Icon I_DoorRight_8x56; |  | ||||||
| extern const Icon I_DoorLeft_70x55; |  | ||||||
| extern const Icon I_PassportLeft_6x47; |  | ||||||
| extern const Icon I_DoorRight_70x55; | extern const Icon I_DoorRight_70x55; | ||||||
|  | extern const Icon I_DoorRight_8x56; | ||||||
| extern const Icon I_LockPopup_100x49; | extern const Icon I_LockPopup_100x49; | ||||||
| extern const Icon I_Mute_25x27; | extern const Icon I_PassportBottom_128x17; | ||||||
| extern const Icon I_IrdaArrowUp_4x8; | extern const Icon I_PassportLeft_6x47; | ||||||
| extern const Icon I_Up_hvr_25x27; | extern const Icon I_Back_15x10; | ||||||
| extern const Icon I_Mute_hvr_25x27; |  | ||||||
| extern const Icon I_Vol_down_25x27; |  | ||||||
| extern const Icon I_Down_25x27; | extern const Icon I_Down_25x27; | ||||||
| extern const Icon I_Power_hvr_25x27; |  | ||||||
| extern const Icon I_IrdaLearnShort_128x31; |  | ||||||
| extern const Icon I_IrdaArrowDown_4x8; |  | ||||||
| extern const Icon I_Vol_down_hvr_25x27; |  | ||||||
| extern const Icon I_IrdaLearn_128x64; |  | ||||||
| extern const Icon I_Down_hvr_25x27; | extern const Icon I_Down_hvr_25x27; | ||||||
| extern const Icon I_Fill_marker_7x7; | extern const Icon I_Fill_marker_7x7; | ||||||
| extern const Icon I_Power_25x27; | extern const Icon I_IrdaArrowDown_4x8; | ||||||
| extern const Icon I_Vol_up_25x27; | extern const Icon I_IrdaArrowUp_4x8; | ||||||
| extern const Icon I_Up_25x27; | extern const Icon I_IrdaLearnShort_128x31; | ||||||
| extern const Icon I_Back_15x10; | extern const Icon I_IrdaLearn_128x64; | ||||||
| extern const Icon I_IrdaSend_128x64; |  | ||||||
| extern const Icon I_IrdaSendShort_128x34; | extern const Icon I_IrdaSendShort_128x34; | ||||||
|  | extern const Icon I_IrdaSend_128x64; | ||||||
|  | extern const Icon I_Mute_25x27; | ||||||
|  | extern const Icon I_Mute_hvr_25x27; | ||||||
|  | extern const Icon I_Power_25x27; | ||||||
|  | extern const Icon I_Power_hvr_25x27; | ||||||
|  | extern const Icon I_Up_25x27; | ||||||
|  | extern const Icon I_Up_hvr_25x27; | ||||||
|  | extern const Icon I_Vol_down_25x27; | ||||||
|  | extern const Icon I_Vol_down_hvr_25x27; | ||||||
|  | extern const Icon I_Vol_up_25x27; | ||||||
| extern const Icon I_Vol_up_hvr_25x27; | extern const Icon I_Vol_up_hvr_25x27; | ||||||
| extern const Icon I_KeySave_24x11; |  | ||||||
| extern const Icon I_KeyBackspaceSelected_16x9; | extern const Icon I_KeyBackspaceSelected_16x9; | ||||||
| extern const Icon I_KeySaveSelected_24x11; |  | ||||||
| extern const Icon I_KeyBackspace_16x9; | extern const Icon I_KeyBackspace_16x9; | ||||||
|  | extern const Icon I_KeySaveSelected_24x11; | ||||||
|  | extern const Icon I_KeySave_24x11; | ||||||
| extern const Icon A_125khz_14; | extern const Icon A_125khz_14; | ||||||
| extern const Icon A_Bluetooth_14; | extern const Icon A_Bluetooth_14; | ||||||
| extern const Icon A_Debug_14; | extern const Icon A_Debug_14; | ||||||
| @ -79,41 +80,41 @@ extern const Icon A_U2F_14; | |||||||
| extern const Icon A_iButton_14; | extern const Icon A_iButton_14; | ||||||
| extern const Icon I_Detailed_chip_17x13; | extern const Icon I_Detailed_chip_17x13; | ||||||
| extern const Icon I_Medium_chip_22x21; | extern const Icon I_Medium_chip_22x21; | ||||||
| extern const Icon I_Health_16x16; |  | ||||||
| extern const Icon I_FaceCharging_29x14; |  | ||||||
| extern const Icon I_BatteryBody_52x28; | extern const Icon I_BatteryBody_52x28; | ||||||
| extern const Icon I_Voltage_16x16; | extern const Icon I_Battery_16x16; | ||||||
| extern const Icon I_Temperature_16x16; | extern const Icon I_FaceCharging_29x14; | ||||||
|  | extern const Icon I_FaceConfused_29x14; | ||||||
| extern const Icon I_FaceNopower_29x14; | extern const Icon I_FaceNopower_29x14; | ||||||
| extern const Icon I_FaceNormal_29x14; | extern const Icon I_FaceNormal_29x14; | ||||||
| extern const Icon I_Battery_16x16; | extern const Icon I_Health_16x16; | ||||||
| extern const Icon I_FaceConfused_29x14; | extern const Icon I_Temperature_16x16; | ||||||
| extern const Icon I_RFIDDolphinSuccess_108x57; | extern const Icon I_Voltage_16x16; | ||||||
| extern const Icon I_RFIDBigChip_37x36; | extern const Icon I_RFIDBigChip_37x36; | ||||||
| extern const Icon I_RFIDDolphinSend_97x61; |  | ||||||
| extern const Icon I_RFIDDolphinReceive_97x61; | extern const Icon I_RFIDDolphinReceive_97x61; | ||||||
| extern const Icon I_SDQuestion_35x43; | extern const Icon I_RFIDDolphinSend_97x61; | ||||||
|  | extern const Icon I_RFIDDolphinSuccess_108x57; | ||||||
| extern const Icon I_SDError_43x35; | extern const Icon I_SDError_43x35; | ||||||
| extern const Icon I_BadUsb_9x8; | extern const Icon I_SDQuestion_35x43; | ||||||
| extern const Icon I_PlaceholderR_30x13; |  | ||||||
| extern const Icon I_Background_128x8; |  | ||||||
| extern const Icon I_Lock_8x8; |  | ||||||
| extern const Icon I_Battery_26x8; |  | ||||||
| extern const Icon I_PlaceholderL_11x13; |  | ||||||
| extern const Icon I_Battery_19x8; |  | ||||||
| extern const Icon I_SDcardMounted_11x8; |  | ||||||
| extern const Icon I_SDcardFail_11x8; |  | ||||||
| extern const Icon I_USBConnected_15x8; |  | ||||||
| extern const Icon I_Bluetooth_5x8; |  | ||||||
| extern const Icon I_Background_128x11; | extern const Icon I_Background_128x11; | ||||||
| extern const Icon I_Scanning_123x52; | extern const Icon I_Background_128x8; | ||||||
| extern const Icon I_Quest_7x8; | extern const Icon I_BadUsb_9x8; | ||||||
| extern const Icon I_Unlock_7x8; | extern const Icon I_Battery_19x8; | ||||||
|  | extern const Icon I_Battery_26x8; | ||||||
|  | extern const Icon I_Bluetooth_5x8; | ||||||
|  | extern const Icon I_Lock_8x8; | ||||||
|  | extern const Icon I_PlaceholderL_11x13; | ||||||
|  | extern const Icon I_PlaceholderR_30x13; | ||||||
|  | extern const Icon I_SDcardFail_11x8; | ||||||
|  | extern const Icon I_SDcardMounted_11x8; | ||||||
|  | extern const Icon I_USBConnected_15x8; | ||||||
| extern const Icon I_Lock_7x8; | extern const Icon I_Lock_7x8; | ||||||
| extern const Icon I_DolphinMafia_115x62; | extern const Icon I_Quest_7x8; | ||||||
|  | extern const Icon I_Scanning_123x52; | ||||||
|  | extern const Icon I_Unlock_7x8; | ||||||
| extern const Icon I_DolphinExcited_64x63; | extern const Icon I_DolphinExcited_64x63; | ||||||
|  | extern const Icon I_DolphinMafia_115x62; | ||||||
|  | extern const Icon I_DolphinNice_96x59; | ||||||
|  | extern const Icon I_DolphinWait_61x59; | ||||||
| extern const Icon I_iButtonDolphinSuccess_109x60; | extern const Icon I_iButtonDolphinSuccess_109x60; | ||||||
| extern const Icon I_iButtonDolphinVerySuccess_108x52; | extern const Icon I_iButtonDolphinVerySuccess_108x52; | ||||||
| extern const Icon I_iButtonKey_49x44; | extern const Icon I_iButtonKey_49x44; | ||||||
| extern const Icon I_DolphinNice_96x59; |  | ||||||
| extern const Icon I_DolphinWait_61x59; |  | ||||||
|  | |||||||
							
								
								
									
										
											BIN
										
									
								
								assets/icons/About/Certification_128x64.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/icons/About/Certification_128x64.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 1.9 KiB | 
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 SG
						SG