Add About... screen

Signed-off-by: Markus Birth <markus@birth-online.de>
This commit is contained in:
2026-01-26 16:15:46 +00:00
parent a77bcbacfb
commit 3602a4dca7
4 changed files with 35 additions and 11 deletions
+27
View File
@@ -0,0 +1,27 @@
#include "../uk_mbirth_sonicare.h"
void sonicare_scene_about_on_enter(void* context) {
Sonicare* app = context;
Widget* widget = app->widget;
FuriString* display_text = furi_string_alloc();
furi_string_cat(display_text, "Sonicare Brush Head ID\nby mbirth.uk");
widget_add_text_scroll_element(widget, 0, 0, 128, 64, furi_string_get_cstr(display_text));
view_dispatcher_switch_to_view(app->view_dispatcher, SonicareViewWidget);
furi_string_free(display_text);
}
bool sonicare_scene_about_on_event(void* context, SceneManagerEvent event) {
UNUSED(context);
UNUSED(event);
bool consumed = false;
return consumed;
}
void sonicare_scene_about_on_exit(void* context) {
Sonicare* app = context;
widget_reset(app->widget);
}
+1
View File
@@ -1,2 +1,3 @@
ADD_SCENE(sonicare, start, Start)
ADD_SCENE(sonicare, about, About)
ADD_SCENE(sonicare, read, Read)
+6 -11
View File
@@ -11,21 +11,11 @@ void sonicare_scene_start_on_enter(void* context) {
Sonicare* app = context;
Submenu* submenu = app->submenu;
submenu_add_item(
submenu,
"Extra Actions",
SonicareMenuIndexExtraActions,
sonicare_scene_start_submenu_callback,
app);
submenu_add_item(submenu, "Read Brush Head", SonicareMenuIndexRead, sonicare_scene_start_submenu_callback, app);
submenu_add_item(submenu, "Write Brush Head", SonicareMenuIndexSaved, sonicare_scene_start_submenu_callback, app);
submenu_add_item(submenu, "Add Manually", SonicareMenuIndexAddManually, sonicare_scene_start_submenu_callback, app);
submenu_add_item(submenu, "About...", SonicareMenuIndexAbout, sonicare_scene_start_submenu_callback, app);
// clear key
//furi_string_reset(app->file_name);
//app->protocol_id = PROTOCOL_NO;
//app->read_type = SONICAREWorkerReadTypeAuto;
submenu_set_selected_item(submenu, scene_manager_get_scene_state(app->scene_manager, SonicareSceneStart));
view_dispatcher_switch_to_view(app->view_dispatcher, SonicareViewSubmenu);
@@ -41,7 +31,12 @@ bool sonicare_scene_start_on_event(void* context, SceneManagerEvent event) {
scene_manager_next_scene(app->scene_manager, SonicareSceneRead);
dolphin_deed(DolphinDeedNfcRead);
consumed = true;
} else if (event.event == SonicareMenuIndexAbout) {
scene_manager_set_scene_state(app->scene_manager, SonicareSceneStart, SonicareMenuIndexAbout);
scene_manager_next_scene(app->scene_manager, SonicareSceneAbout);
consumed = true;
}
}
return consumed;
+1
View File
@@ -56,6 +56,7 @@ typedef enum {
typedef enum {
SonicareMenuIndexRead,
SonicareMenuIndexAbout,
SonicareMenuIndexSaved,
SonicareMenuIndexAddManually,
SonicareMenuIndexExtraActions,