Add experimental dark mode setting

This commit is contained in:
Willy-JL
2023-02-27 19:12:48 +00:00
parent 991d49733f
commit 007447cc61
7 changed files with 48 additions and 6 deletions

View File

@@ -2,6 +2,7 @@
enum VarItemListIndex {
VarItemListIndexSortDirsFirst,
VarItemListIndexDarkMode,
VarItemListIndexChangeDeviceName,
};
@@ -10,7 +11,7 @@ void xtreme_app_scene_misc_var_item_list_callback(void* context, uint32_t index)
view_dispatcher_send_custom_event(app->view_dispatcher, index);
}
static void xtreme_app_scene_misc_sort_folders_before_changed(VariableItem* item) {
static void xtreme_app_scene_misc_sort_dirs_first_changed(VariableItem* item) {
XtremeApp* app = variable_item_get_context(item);
bool value = variable_item_get_current_value_index(item);
variable_item_set_current_value_text(item, value ? "ON" : "OFF");
@@ -18,6 +19,14 @@ static void xtreme_app_scene_misc_sort_folders_before_changed(VariableItem* item
app->save_settings = true;
}
static void xtreme_app_scene_misc_dark_mode_changed(VariableItem* item) {
XtremeApp* app = variable_item_get_context(item);
bool value = variable_item_get_current_value_index(item);
variable_item_set_current_value_text(item, value ? "ON" : "OFF");
XTREME_SETTINGS()->dark_mode = value;
app->save_settings = true;
}
void xtreme_app_scene_misc_on_enter(void* context) {
XtremeApp* app = context;
XtremeSettings* xtreme_settings = XTREME_SETTINGS();
@@ -28,11 +37,20 @@ void xtreme_app_scene_misc_on_enter(void* context) {
var_item_list,
"Sort Dirs First",
2,
xtreme_app_scene_misc_sort_folders_before_changed,
xtreme_app_scene_misc_sort_dirs_first_changed,
app);
variable_item_set_current_value_index(item, xtreme_settings->sort_dirs_first);
variable_item_set_current_value_text(item, xtreme_settings->sort_dirs_first ? "ON" : "OFF");
item = variable_item_list_add(
var_item_list,
"Dark Mode (Exp.)",
2,
xtreme_app_scene_misc_dark_mode_changed,
app);
variable_item_set_current_value_index(item, xtreme_settings->dark_mode);
variable_item_set_current_value_text(item, xtreme_settings->dark_mode ? "ON" : "OFF");
variable_item_list_add(var_item_list, "Change Device Name", 0, NULL, app);
variable_item_list_set_enter_callback(