summaryrefslogtreecommitdiffstats
path: root/apps/playlist.c
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2006-08-12 11:00:39 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2006-08-12 11:00:39 +0000
commit54ec1f5f6db24ab90046b7cbab371c99e239f67e (patch)
treef028eaf16d8c6d2a5a7502dffaac499128bf1f20 /apps/playlist.c
parent9d2929b79b22765701e9db240d967877d7f7bab8 (diff)
downloadrockbox-54ec1f5f6db24ab90046b7cbab371c99e239f67e.tar.gz
rockbox-54ec1f5f6db24ab90046b7cbab371c99e239f67e.zip
Better UI response with playlist operations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10544 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/playlist.c')
-rw-r--r--apps/playlist.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/apps/playlist.c b/apps/playlist.c
index 6b35bb6c3f..a51e8f501c 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -1873,9 +1873,30 @@ int playlist_resume(void)
char *str1 = NULL;
char *str2 = NULL;
char *str3 = NULL;
-
+ unsigned long last_tick = current_tick;
+
for(count=0; count<nread && !exit_loop; count++,p++)
{
+ /* So a splash while we are loading. */
+ if (current_tick - last_tick > HZ/4)
+ {
+ gui_syncsplash(0, true, str(LANG_LOADING_PERCENT),
+ (total_read+count)*100/control_file_size,
+#if CONFIG_KEYPAD == PLAYER_PAD
+ str(LANG_STOP_ABORT)
+#else
+ str(LANG_OFF_ABORT)
+#endif
+ );
+ if (SETTINGS_CANCEL == button_get(false))
+ {
+ /* FIXME:
+ * Not sure how to implement this, somebody more familiar
+ * with the code, please fix this. */
+ }
+ last_tick = current_tick;
+ }
+
/* Are we on a new line? */
if((*p == '\n') || (*p == '\r'))
{