summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Bavin <pondlife@pondlife.me>2007-10-03 16:17:36 +0000
committerSteve Bavin <pondlife@pondlife.me>2007-10-03 16:17:36 +0000
commit5a78a06073a9c2b9803af89a57ca129990c873d3 (patch)
tree0eb6a8c61a88985f0176c62906d2af2cab5ef8d1
parent3dd25e85590f14a94d455e2e715c8df4766499f3 (diff)
downloadrockbox-5a78a06073a9c2b9803af89a57ca129990c873d3.zip
rockbox-5a78a06073a9c2b9803af89a57ca129990c873d3.tar.gz
rockbox-5a78a06073a9c2b9803af89a57ca129990c873d3.tar.bz2
rockbox-5a78a06073a9c2b9803af89a57ca129990c873d3.tar.xz
Just temporarily disable talk menus, in case the player is reset whilst in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14970 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/plugin.c4
-rw-r--r--apps/plugin.h5
-rw-r--r--apps/plugins/mpegplayer/mpegplayer.c6
3 files changed, 10 insertions, 5 deletions
diff --git a/apps/plugin.c b/apps/plugin.c
index f0b86c0..246df99 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 5f98f95..e69ab52 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 c3e119a..8b15ff0 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;
}