diff options
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/settings.c | 11 | ||||
| -rw-r--r-- | apps/settings.h | 12 | ||||
| -rw-r--r-- | apps/settings_menu.c | 19 |
3 files changed, 39 insertions, 3 deletions
diff --git a/apps/settings.c b/apps/settings.c index 8dcad6b..d2b220f 100644 --- a/apps/settings.c +++ b/apps/settings.c @@ -647,6 +647,14 @@ static const struct bit_entry hd_bits[] = {8|SIGNED, S_O(rec_agc_maxgain_line), 96, "agc maximum line gain", NULL}, {3, S_O(rec_agc_cliptime), 1, "agc cliptime", "0.2s,0.4s,0.6s,0.8,1s"}, #endif + +#ifdef HAVE_REMOTE_LCD +#ifdef HAS_REMOTE_BUTTON_HOLD + {2, S_O(remote_backlight_on_button_hold), 0, "remote backlight on button hold", + "normal,off,on" }, +#endif +#endif + /* If values are just added to the end, no need to bump the version. */ /* new stuff to be added at the end */ @@ -1108,7 +1116,10 @@ void settings_apply(void) #ifdef CONFIG_CHARGING remote_backlight_set_timeout_plugged(global_settings.remote_backlight_timeout_plugged); #endif +#ifdef HAS_REMOTE_BUTTON_HOLD + remote_backlight_set_on_button_hold(global_settings.remote_backlight_on_button_hold); #endif +#endif /* HAVE_REMOTE_LCD */ #ifdef CONFIG_BACKLIGHT backlight_set_timeout(global_settings.backlight_timeout); #ifdef CONFIG_CHARGING diff --git a/apps/settings.h b/apps/settings.h index b66e96b..561dc59 100644 --- a/apps/settings.h +++ b/apps/settings.h @@ -354,11 +354,15 @@ struct user_settings then according to timeout_values[] */ int remote_backlight_timeout_plugged; bool remote_caption_backlight; /* turn on backlight at end and start of track */ +#ifdef HAS_REMOTE_BUTTON_HOLD + int remote_backlight_on_button_hold; /* what to do with remote backlight when hold + switch is on */ +#endif #ifdef HAVE_REMOTE_LCD_TICKING bool remote_reduce_ticking; /* 0=normal operation, 1=EMI reduce on with cost more CPU. */ #endif -#endif +#endif /* HAVE_REMOTE_LCD */ bool next_folder; /* move to next folder */ bool runtimedb; /* runtime database active? */ @@ -446,10 +450,12 @@ struct user_settings bool remote_bl_filter_first_keypress; /* filter first remote keypress when remote dark? */ #endif #ifdef HAS_BUTTON_HOLD - int backlight_on_button_hold; + int backlight_on_button_hold; /* what to do with backlight when hold + switch is on */ #endif #ifdef HAVE_LCD_SLEEP - int lcd_sleep_after_backlight_off; + int lcd_sleep_after_backlight_off; /* when to put lcd to sleep after backlight + has turned off */ #endif #endif /* CONFIG_BACKLIGHT */ diff --git a/apps/settings_menu.c b/apps/settings_menu.c index 5f84dc1..ab19c82 100644 --- a/apps/settings_menu.c +++ b/apps/settings_menu.c @@ -315,6 +315,22 @@ static bool remote_caption_backlight(void) return set_bool((char *)str(LANG_CAPTION_BACKLIGHT), &global_settings.remote_caption_backlight); } + +#ifdef HAS_REMOTE_BUTTON_HOLD +static bool remote_backlight_on_button_hold(void) +{ + static const struct opt_items names[3] = { + { STR(LANG_BACKLIGHT_ON_BUTTON_HOLD_NORMAL) }, + { STR(LANG_OFF) }, + { STR(LANG_ON) }, + }; + return set_option(str(LANG_BACKLIGHT_ON_BUTTON_HOLD), + &global_settings.remote_backlight_on_button_hold, + INT, names, 3, + remote_backlight_set_on_button_hold); +} +#endif /* HAS_BUTTON_HOLD */ + #endif /* HAVE_REMOTE_LCD */ #ifdef HAVE_LCD_CONTRAST @@ -1887,6 +1903,9 @@ static bool lcd_remote_settings_menu(void) { ID2P(LANG_BACKLIGHT_ON_WHEN_CHARGING), remote_backlight_timer_plugged }, #endif +#ifdef HAS_REMOTE_BUTTON_HOLD + { ID2P(LANG_BACKLIGHT_ON_BUTTON_HOLD), remote_backlight_on_button_hold }, +#endif { ID2P(LANG_CAPTION_BACKLIGHT), remote_caption_backlight }, { ID2P(LANG_BACKLIGHT_FILTER_FIRST_KEYPRESS), set_remote_bl_filter_first_keypress }, { ID2P(LANG_CONTRAST), remote_contrast }, |