diff --git a/apps/plugin.c b/apps/plugin.c index f0b86c08cb..246df99290 100644 --- a/apps/plugin.c +++ b/apps/plugin.c @@ -34,6 +34,7 @@ #include "splash.h" #include "logf.h" #include "option_select.h" +#include "talk.h" #if CONFIG_CHARGING #include "power.h" @@ -514,6 +515,9 @@ static const struct plugin_api rockbox_api = { flush_icache, invalidate_icache, #endif + talk_disable_menus, + talk_enable_menus, + }; int plugin_load(const char* plugin, void* parameter) diff --git a/apps/plugin.h b/apps/plugin.h index 5f98f951e6..e69ab52321 100644 --- a/apps/plugin.h +++ b/apps/plugin.h @@ -112,7 +112,7 @@ #define PLUGIN_MAGIC 0x526F634B /* RocK */ /* increase this every time the api struct changes */ -#define PLUGIN_API_VERSION 78 +#define PLUGIN_API_VERSION 79 /* update this to latest version if a change to the api struct breaks backwards compatibility (and please take the opportunity to sort in any @@ -632,6 +632,9 @@ struct plugin_api { void (*flush_icache)(void); void (*invalidate_icache)(void); #endif + + void (*talk_disable_menus)(void); + void (*talk_enable_menus)(void); }; /* plugin header */ diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c index c3e119aab1..8b15ff03ce 100644 --- a/apps/plugins/mpegplayer/mpegplayer.c +++ b/apps/plugins/mpegplayer/mpegplayer.c @@ -1780,7 +1780,6 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) long graysize; int grayscales; #endif - bool talk_menu; if (parameter == NULL) { @@ -1872,8 +1871,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) /* Turn off backlight timeout */ backlight_force_on(rb); /* backlight control in lib/helper.c */ - talk_menu = rb->global_settings->talk_menu; - rb->global_settings->talk_menu = false; + rb->talk_disable_menus(); #ifdef HAVE_ADJUSTABLE_CPU_FREQ rb->cpu_boost(true); @@ -2014,7 +2012,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) /* Turn on backlight timeout (revert to settings) */ backlight_use_settings(rb); /* backlight control in lib/helper.c */ - rb->global_settings->talk_menu = talk_menu; + rb->talk_enable_menus(); return status; }