diff options
author | William Wilgus <wilgus.william@gmail.com> | 2023-09-13 23:11:05 -0400 |
---|---|---|
committer | William Wilgus <wilgus.william@gmail.com> | 2023-09-13 23:25:05 -0400 |
commit | df51d49b22d0652a355e48cd33934a14fb0acc07 (patch) | |
tree | 7fae532f390a62b125542f79e2019357e056282c | |
parent | d8b995c6424c942381a52f411555b51a62bedec5 (diff) | |
download | rockbox-df51d49b22.tar.gz rockbox-df51d49b22.zip |
[BugFix] F_CB_ONLY_IF_CHANGED Overlapped NVRAM
the flag I chose was already used for nvram settings
moved both CB flags to unused flags
Change-Id: I9fdbc88460b08654a06b4d5950712947eab04b79
-rw-r--r-- | apps/settings.c | 1 | ||||
-rw-r--r-- | apps/settings_list.h | 12 |
2 files changed, 9 insertions, 4 deletions
diff --git a/apps/settings.c b/apps/settings.c index 619c5062ec..8cfd4afec3 100644 --- a/apps/settings.c +++ b/apps/settings.c @@ -1378,6 +1378,7 @@ static char *debug_get_flags(uint32_t flags) SETTINGFLAGS(F_TABLE_SETTING); SETTINGFLAGS(F_ALLOW_ARBITRARY_VALS); SETTINGFLAGS(F_CB_ON_SELECT_ONLY); + SETTINGFLAGS(F_CB_ONLY_IF_CHANGED); SETTINGFLAGS(F_MIN_ISFUNC); SETTINGFLAGS(F_MAX_ISFUNC); SETTINGFLAGS(F_DEF_ISFUNC); diff --git a/apps/settings_list.h b/apps/settings_list.h index 3a6b0d60c2..d16d7e255b 100644 --- a/apps/settings_list.h +++ b/apps/settings_list.h @@ -101,8 +101,7 @@ struct table_setting { }; #define F_TABLE_SETTING 0x2000 #define F_ALLOW_ARBITRARY_VALS 0x4000 -#define F_CB_ON_SELECT_ONLY 0x20000 -#define F_CB_ONLY_IF_CHANGED 0x40000 + /* these use the _isfunc_type type for the function */ /* typedef int (*_isfunc_type)(void); */ #define F_MIN_ISFUNC 0x100000 /* min(above) is function pointer to above type */ @@ -153,11 +152,16 @@ struct custom_setting { - a NVRAM setting is removed */ #define F_TEMPVAR 0x0400 /* used if the setting should be set using a temp var */ -#define F_PADTITLE 0x800 /* pad the title with spaces to force it to scroll */ +#define F_PADTITLE 0x0800 /* pad the title with spaces to force it to scroll */ #define F_NO_WRAP 0x1000 /* used if the list should not wrap */ -#define F_BANFROMQS 0x80000000 /* ban the setting from the quickscreen items */ +#define F_CB_ON_SELECT_ONLY 0x10000000 /* option_callback only called if selected */ +#define F_CB_ONLY_IF_CHANGED 0x20000000 /* option_callback only called if setting changed */ + #define F_DEPRECATED 0x40000000 /* DEPRECATED setting, don't write to .cfg */ +#define F_BANFROMQS 0x80000000 /* ban the setting from the quickscreen items */ + + struct settings_list { uint32_t flags; /* BD__ _SER TFFF NNN_ _ATW PTVC IFRB STTT */ void *setting; |