From 897ea3f90187b07f7493551339c54301a3715453 Mon Sep 17 00:00:00 2001 From: Willy-JL Date: Sun, 12 Feb 2023 02:14:06 +0000 Subject: [PATCH] Remember bad kb connection mode --- applications/main/bad_kb/bad_kb_app.c | 2 ++ applications/main/bad_kb/scenes/bad_kb_scene_config_bt.c | 3 +++ applications/main/bad_kb/scenes/bad_kb_scene_config_usb.c | 3 +++ applications/services/xtreme/settings.h | 1 + 4 files changed, 9 insertions(+) diff --git a/applications/main/bad_kb/bad_kb_app.c b/applications/main/bad_kb/bad_kb_app.c index 0a47b7492..dfce5acbf 100644 --- a/applications/main/bad_kb/bad_kb_app.c +++ b/applications/main/bad_kb/bad_kb_app.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include @@ -97,6 +98,7 @@ BadKbApp* bad_kb_app_alloc(char* arg) { Bt* bt = furi_record_open(RECORD_BT); app->bt = bt; + app->is_bt = XTREME_SETTINGS()->bad_bt; const char* adv_name = bt_get_profile_adv_name(bt); memcpy(app->name, adv_name, BAD_KB_ADV_NAME_MAX_LEN); memcpy(app->bt_old_config.name, adv_name, BAD_KB_ADV_NAME_MAX_LEN); diff --git a/applications/main/bad_kb/scenes/bad_kb_scene_config_bt.c b/applications/main/bad_kb/scenes/bad_kb_scene_config_bt.c index 394783828..4412f0796 100644 --- a/applications/main/bad_kb/scenes/bad_kb_scene_config_bt.c +++ b/applications/main/bad_kb/scenes/bad_kb_scene_config_bt.c @@ -1,6 +1,7 @@ #include "../bad_kb_app_i.h" #include "furi_hal_power.h" #include "furi_hal_usb.h" +#include enum VarItemListIndex { VarItemListIndexConnection, @@ -12,6 +13,8 @@ enum VarItemListIndex { void bad_kb_scene_config_bt_connection_callback(VariableItem* item) { BadKbApp* bad_kb = variable_item_get_context(item); bad_kb->is_bt = variable_item_get_current_value_index(item); + XTREME_SETTINGS()->bad_bt = bad_kb->is_bt; + XTREME_SETTINGS_SAVE(); variable_item_set_current_value_text(item, bad_kb->is_bt ? "BT" : "USB"); view_dispatcher_send_custom_event(bad_kb->view_dispatcher, VarItemListIndexConnection); } diff --git a/applications/main/bad_kb/scenes/bad_kb_scene_config_usb.c b/applications/main/bad_kb/scenes/bad_kb_scene_config_usb.c index fc265b64e..232ef8796 100644 --- a/applications/main/bad_kb/scenes/bad_kb_scene_config_usb.c +++ b/applications/main/bad_kb/scenes/bad_kb_scene_config_usb.c @@ -1,6 +1,7 @@ #include "../bad_kb_app_i.h" #include "furi_hal_power.h" #include "furi_hal_usb.h" +#include enum VarItemListIndex { VarItemListIndexConnection, @@ -10,6 +11,8 @@ enum VarItemListIndex { void bad_kb_scene_config_usb_connection_callback(VariableItem* item) { BadKbApp* bad_kb = variable_item_get_context(item); bad_kb->is_bt = variable_item_get_current_value_index(item); + XTREME_SETTINGS()->bad_bt = bad_kb->is_bt; + XTREME_SETTINGS_SAVE(); variable_item_set_current_value_text(item, bad_kb->is_bt ? "BT" : "USB"); view_dispatcher_send_custom_event(bad_kb->view_dispatcher, VarItemListIndexConnection); } diff --git a/applications/services/xtreme/settings.h b/applications/services/xtreme/settings.h index 9fd5f5c53..7f93e6071 100644 --- a/applications/services/xtreme/settings.h +++ b/applications/services/xtreme/settings.h @@ -23,6 +23,7 @@ typedef struct { uint16_t anim_speed; bool sort_ignore_dirs; bool status_bar; + bool bad_bt; } XtremeSettings; XtremeSettings* XTREME_SETTINGS();