From 8d4d5f67ea9134e9a108eb18e1533c6b84c0ff84 Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Sun, 5 Aug 2007 10:25:00 +0000 Subject: Address FS#6310 - shows an "infinite" slider when deleting/copying/moving files. maybe add this to other parts of the code so it doesnt look like the ui has stalled git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14189 a1c6a512-1295-4272-9138-f99709370657 --- apps/onplay.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'apps/onplay.c') diff --git a/apps/onplay.c b/apps/onplay.c index ea73dbbada..f09913e312 100644 --- a/apps/onplay.c +++ b/apps/onplay.c @@ -487,8 +487,13 @@ static int remove_dir(char* dirname, int len) } else { /* remove a file */ +#ifdef HAVE_LCD_BITMAP FOR_NB_SCREENS(i) - screens[i].puts_scroll(0,2,entry->d_name); + { + show_busy_slider(&screens[i], 2, 3*screens[i].char_height, + LCD_WIDTH-4, screens[i].char_height); + } +#endif result = remove(dirname); } #ifdef HAVE_LCD_BITMAP @@ -661,6 +666,21 @@ static bool clipboard_copy(void) return clipboard_clip(true); } +#ifdef HAVE_LCD_BITMAP +static inline void draw_slider(void) +{ + int i; + FOR_NB_SCREENS(i) + { + show_busy_slider(&screens[i], 2, LCD_HEIGHT/4, + LCD_WIDTH-4, screens[i].char_height); + screens[i].update(); + } +} +#else +#define draw_slider() +#endif + /* Paste a file to a new directory. Will overwrite always. */ static bool clipboard_pastefile(const char *src, const char *target, bool copy) { @@ -721,6 +741,7 @@ static bool clipboard_pastefile(const char *src, const char *target, bool copy) } bytesread -= byteswritten; + draw_slider(); } } -- cgit v1.2.3