summaryrefslogtreecommitdiff
path: root/apps/gui/gwps.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/gui/gwps.c')
-rw-r--r--apps/gui/gwps.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/apps/gui/gwps.c b/apps/gui/gwps.c
index 06e7ae4aed..c3658e6c82 100644
--- a/apps/gui/gwps.c
+++ b/apps/gui/gwps.c
@@ -89,6 +89,7 @@ long gui_wps_show(void)
89 bool exit = false; 89 bool exit = false;
90 bool update_track = false; 90 bool update_track = false;
91 int i; 91 int i;
92 long last_left = 0, last_right = 0;
92 93
93 action_signalscreenchange(); 94 action_signalscreenchange();
94 95
@@ -293,18 +294,32 @@ long gui_wps_show(void)
293 } 294 }
294 } 295 }
295 break; 296 break;
296 /* fast forward / rewind */ 297 /* fast forward
298 OR next dir if this is straight after ACTION_WPS_SKIPNEXT */
297 case ACTION_WPS_SEEKFWD: 299 case ACTION_WPS_SEEKFWD:
300 if (global_settings.party_mode)
301 break;
302 if (current_tick -last_right < HZ)
303 audio_next_dir();
304 else ffwd_rew(ACTION_WPS_SEEKFWD);
305 last_right = 0;
306 break;
307 /* fast rewind
308 OR prev dir if this is straight after ACTION_WPS_SKIPPREV */
298 case ACTION_WPS_SEEKBACK: 309 case ACTION_WPS_SEEKBACK:
299 if (global_settings.party_mode) 310 if (global_settings.party_mode)
300 break; 311 break;
301 ffwd_rew(button); 312 if (current_tick -last_left < HZ)
313 audio_prev_dir();
314 else ffwd_rew(ACTION_WPS_SEEKBACK);
315 last_left = 0;
302 break; 316 break;
303 317
304 /* prev / restart */ 318 /* prev / restart */
305 case ACTION_WPS_SKIPPREV: 319 case ACTION_WPS_SKIPPREV:
306 if (global_settings.party_mode) 320 if (global_settings.party_mode)
307 break; 321 break;
322 last_left = current_tick;
308 update_track = true; 323 update_track = true;
309 324
310#ifdef AB_REPEAT_ENABLE 325#ifdef AB_REPEAT_ENABLE
@@ -349,6 +364,7 @@ long gui_wps_show(void)
349 case ACTION_WPS_SKIPNEXT: 364 case ACTION_WPS_SKIPNEXT:
350 if (global_settings.party_mode) 365 if (global_settings.party_mode)
351 break; 366 break;
367 last_right = current_tick;
352 update_track = true; 368 update_track = true;
353 369
354#ifdef AB_REPEAT_ENABLE 370#ifdef AB_REPEAT_ENABLE
@@ -368,7 +384,6 @@ long gui_wps_show(void)
368 } 384 }
369 /* ...otherwise, do it normally */ 385 /* ...otherwise, do it normally */
370#endif 386#endif
371
372 audio_next(); 387 audio_next();
373 break; 388 break;
374 /* next / prev directories */ 389 /* next / prev directories */