mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-12-08 12:45:26 -05:00
WPS screen now handles USB detection
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1282 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
53b8c99521
commit
c4c52f8209
3 changed files with 48 additions and 20 deletions
21
apps/tree.c
21
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,7 +398,13 @@ 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;
|
||||
|
|
@ -402,13 +415,11 @@ bool dirbrowse(char *root)
|
|||
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;
|
||||
restore = true;
|
||||
strcpy(currdir, "/");
|
||||
lastdir[0] = 0;
|
||||
break;
|
||||
|
|
|
|||
21
apps/wps.c
21
apps/wps.c
|
|
@ -30,6 +30,7 @@
|
|||
#include "settings.h"
|
||||
#include "wps.h"
|
||||
#include "mpeg.h"
|
||||
#include "usb.h"
|
||||
|
||||
|
||||
#define LINE_Y 1 /* initial line */
|
||||
|
|
@ -112,7 +113,7 @@ static void draw_screen(struct mp3entry* id3)
|
|||
}
|
||||
|
||||
/* demonstrates showing different formats from playtune */
|
||||
void wps_show(void)
|
||||
int wps_show(void)
|
||||
{
|
||||
static bool playing = true;
|
||||
struct mp3entry* id3 = mpeg_current_track();
|
||||
|
|
@ -159,7 +160,7 @@ void wps_show(void)
|
|||
for ( i=0;i<5;i++ ) {
|
||||
switch ( button_get(false) ) {
|
||||
case BUTTON_ON:
|
||||
return;
|
||||
return 0;
|
||||
|
||||
#ifdef HAVE_RECORDER_KEYPAD
|
||||
case BUTTON_PLAY:
|
||||
|
|
@ -205,6 +206,22 @@ void wps_show(void)
|
|||
#endif
|
||||
mpeg_stop();
|
||||
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);
|
||||
|
||||
/* Signal to our caller that we have been in USB mode */
|
||||
return SYS_USB_CONNECTED;
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
sleep(HZ/10);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,6 +21,6 @@
|
|||
#include "id3.h"
|
||||
#include "playlist.h"
|
||||
|
||||
void wps_show(void);
|
||||
int wps_show(void);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue