From c4c52f82091e1dd117d232df4efecece185fc958 Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Mon, 1 Jul 2002 11:06:23 +0000 Subject: WPS screen now handles USB detection git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1282 a1c6a512-1295-4272-9138-f99709370657 --- apps/tree.c | 45 ++++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 17 deletions(-) (limited to 'apps/tree.c') diff --git a/apps/tree.c b/apps/tree.c index b7f18fa..a6308b4 100644 --- a/apps/tree.c +++ b/apps/tree.c @@ -256,6 +256,7 @@ bool dirbrowse(char *root) char buf[255]; int i; int button; + int rc; memcpy(currdir,root,sizeof(currdir)); numentries = showdir(root, start); @@ -341,7 +342,13 @@ bool dirbrowse(char *root) mpeg_play(buf); } lcd_stop_scroll(); - wps_show(); + rc = wps_show(); + if(rc == SYS_USB_CONNECTED) + { + /* Force a re-read of the root directory */ + strcpy(currdir, "/"); + lastdir[0] = 0; + } } restore = true; break; @@ -391,27 +398,31 @@ bool dirbrowse(char *root) case BUTTON_ON: if ( play_mode ) { lcd_stop_scroll(); - wps_show(); + rc = wps_show(); + if(rc == SYS_USB_CONNECTED) + { + /* Force a re-read of the root directory */ + strcpy(currdir, "/"); + lastdir[0] = 0; + } restore = true; } break; #ifndef SIMULATOR - case SYS_USB_CONNECTED: - /* Tell the USB thread that we are safe */ - DEBUGF("dirbrowse got SYS_USB_CONNECTED\n"); - usb_acknowledge(SYS_USB_CONNECTED_ACK); - - usb_display_info(); - - /* Wait until the USB cable is extracted again */ - usb_wait_for_disconnect(&button_queue); - - /* Force a re-read of the root directory */ - restore = 1; - strcpy(currdir, "/"); - lastdir[0] = 0; - break; + case SYS_USB_CONNECTED: + /* Tell the USB thread that we are safe */ + DEBUGF("dirbrowse got SYS_USB_CONNECTED\n"); + usb_acknowledge(SYS_USB_CONNECTED_ACK); + + /* Wait until the USB cable is extracted again */ + usb_wait_for_disconnect(&button_queue); + + /* Force a re-read of the root directory */ + restore = true; + strcpy(currdir, "/"); + lastdir[0] = 0; + break; #endif } -- cgit v1.1