diff options
Diffstat (limited to 'apps/settings_menu.c')
-rw-r--r-- | apps/settings_menu.c | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/apps/settings_menu.c b/apps/settings_menu.c index 49e2fe431e..5d130e9cda 100644 --- a/apps/settings_menu.c +++ b/apps/settings_menu.c | |||
@@ -109,12 +109,28 @@ static bool peak_meter_menu(void) | |||
109 | } | 109 | } |
110 | #endif | 110 | #endif |
111 | 111 | ||
112 | #ifndef HAVE_RECORDER_KEYPAD | ||
113 | static bool shuffle(void) | 112 | static bool shuffle(void) |
114 | { | 113 | { |
115 | return set_bool( str(LANG_SHUFFLE), &global_settings.playlist_shuffle ); | 114 | return set_bool( str(LANG_SHUFFLE), &global_settings.playlist_shuffle ); |
116 | } | 115 | } |
117 | #endif | 116 | |
117 | static bool repeat_mode(void) | ||
118 | { | ||
119 | bool result; | ||
120 | char* names[] = { str(LANG_OFF), | ||
121 | str(LANG_REPEAT_ALL), | ||
122 | str(LANG_REPEAT_ONE) }; | ||
123 | |||
124 | int old_repeat = global_settings.repeat_mode; | ||
125 | |||
126 | result = set_option( str(LANG_REPEAT), &global_settings.repeat_mode, | ||
127 | names, 3, NULL ); | ||
128 | |||
129 | if (old_repeat != global_settings.repeat_mode) | ||
130 | mpeg_flush_and_reload_tracks(); | ||
131 | |||
132 | return result; | ||
133 | } | ||
118 | 134 | ||
119 | static bool play_selected(void) | 135 | static bool play_selected(void) |
120 | { | 136 | { |
@@ -299,9 +315,8 @@ static bool playback_settings_menu(void) | |||
299 | bool result; | 315 | bool result; |
300 | 316 | ||
301 | struct menu_items items[] = { | 317 | struct menu_items items[] = { |
302 | #ifndef HAVE_RECORDER_KEYPAD | ||
303 | { str(LANG_SHUFFLE), shuffle }, | 318 | { str(LANG_SHUFFLE), shuffle }, |
304 | #endif | 319 | { str(LANG_REPEAT), repeat_mode }, |
305 | { str(LANG_PLAY_SELECTED), play_selected }, | 320 | { str(LANG_PLAY_SELECTED), play_selected }, |
306 | { str(LANG_RESUME), resume }, | 321 | { str(LANG_RESUME), resume }, |
307 | { str(LANG_FFRW_STEP), ff_rewind_min_step }, | 322 | { str(LANG_FFRW_STEP), ff_rewind_min_step }, |