summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/settings_menu.c7
-rw-r--r--apps/tree.c6
2 files changed, 12 insertions, 1 deletions
diff --git a/apps/settings_menu.c b/apps/settings_menu.c
index 6cdf2626e0..5f5c29f1f4 100644
--- a/apps/settings_menu.c
+++ b/apps/settings_menu.c
@@ -52,6 +52,9 @@ void dac_line_in(bool enable);
#include "alarm_menu.h"
#endif
+/* This flag is set by dirbrowse() if a new language is loaded */
+bool language_changed;
+
static bool car_adapter_mode(void)
{
return set_bool_options( str(LANG_CAR_ADAPTER_MODE),
@@ -873,7 +876,9 @@ static bool custom_cfg_browse(void)
static bool language_browse(void)
{
- return rockbox_browse(ROCKBOX_DIR LANG_DIR, SHOW_LNG);
+ language_changed = false;
+ rockbox_browse(ROCKBOX_DIR LANG_DIR, SHOW_LNG);
+ return language_changed;
}
static bool voice_menus(void)
diff --git a/apps/tree.c b/apps/tree.c
index 8417e9a65e..afdef29228 100644
--- a/apps/tree.c
+++ b/apps/tree.c
@@ -64,6 +64,10 @@
#define BOOTFILE "archos.mod"
#endif
+/* This flag is set by dirbrowse() if a new language is loaded.
+ It is defined in settings_menu.c */
+extern bool language_changed;
+
/* a table for the know file types */
static struct
{
@@ -1179,6 +1183,8 @@ static bool dirbrowse(char *root, int *dirfilter)
talk_init(); /* use voice of same language */
splash(HZ, true, str(LANG_LANGUAGE_LOADED));
restore = true;
+
+ language_changed = true;
}
break;