quickscreen: fix EQ enable not working in quickscreen
The EQ enabled setting needs to call into the DSP core when it's
changed but this was only hooked into the EQ menu. The quickscreen
uses option_select_next_val() so those DSP hooks were not getting
called because the setting did not have any callback defined.
It seems this bug was introduced by 362f7a3220
removing the blanket
call to settings_apply(). Other settings might be affected too.
Change-Id: Idcce5809c525fa619e6bdf1be50c98a5df103fec
This commit is contained in:
parent
b2386405b9
commit
30e96a3732
|
@ -51,6 +51,8 @@
|
|||
#include "option_select.h"
|
||||
#include "string-extra.h"
|
||||
|
||||
static void eq_apply(void);
|
||||
|
||||
/*
|
||||
* Utility functions
|
||||
*/
|
||||
|
@ -69,6 +71,12 @@ const char* eq_precut_format(char* buffer, size_t buffer_size, int value, const
|
|||
return buffer;
|
||||
}
|
||||
|
||||
void eq_enabled_option_callback(bool enabled)
|
||||
{
|
||||
(void)enabled;
|
||||
eq_apply();
|
||||
}
|
||||
|
||||
/*
|
||||
* Settings functions
|
||||
*/
|
||||
|
|
|
@ -48,4 +48,7 @@ const char* eq_q_format(char* buffer, size_t buffer_size, int value,
|
|||
const char* eq_precut_format(char* buffer, size_t buffer_size, int value,
|
||||
const char* unit);
|
||||
|
||||
/* callbacks for settings_list.c */
|
||||
void eq_enabled_option_callback(bool enabled);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1570,7 +1570,7 @@ const struct settings_list settings[] = {
|
|||
|
||||
/* equalizer */
|
||||
OFFON_SETTING(F_EQSETTING, eq_enabled, LANG_EQUALIZER_ENABLED, false,
|
||||
"eq enabled", NULL),
|
||||
"eq enabled", eq_enabled_option_callback),
|
||||
|
||||
INT_SETTING_NOWRAP(F_EQSETTING, eq_precut, LANG_EQUALIZER_PRECUT, 0,
|
||||
"eq precut", UNIT_DB, 0, 240, 1, eq_precut_format,
|
||||
|
|
Loading…
Reference in New Issue