forked from len0rd/rockbox
hopefully fix "early usb"
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23599 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
dd93ef41bb
commit
29e28a3945
4 changed files with 21 additions and 14 deletions
|
@ -128,7 +128,7 @@ struct usb_screen_vps_t
|
||||||
|
|
||||||
#ifdef HAVE_LCD_BITMAP
|
#ifdef HAVE_LCD_BITMAP
|
||||||
static void usb_screen_fix_viewports(struct screen *screen,
|
static void usb_screen_fix_viewports(struct screen *screen,
|
||||||
struct usb_screen_vps_t *usb_screen_vps)
|
struct usb_screen_vps_t *usb_screen_vps, bool early_usb)
|
||||||
{
|
{
|
||||||
int logo_width, logo_height;
|
int logo_width, logo_height;
|
||||||
struct viewport *parent = &usb_screen_vps->parent;
|
struct viewport *parent = &usb_screen_vps->parent;
|
||||||
|
@ -147,8 +147,13 @@ static void usb_screen_fix_viewports(struct screen *screen,
|
||||||
logo_height = BMPHEIGHT_usblogo;
|
logo_height = BMPHEIGHT_usblogo;
|
||||||
}
|
}
|
||||||
|
|
||||||
viewport_set_defaults(parent, screen->screen_type);
|
if (!early_usb)
|
||||||
if (parent->width < logo_width || parent->height < logo_height)
|
{
|
||||||
|
viewport_set_defaults(parent, screen->screen_type);
|
||||||
|
if (parent->width < logo_width || parent->height < logo_height)
|
||||||
|
viewport_set_fullscreen(parent, screen->screen_type);
|
||||||
|
}
|
||||||
|
else
|
||||||
viewport_set_fullscreen(parent, screen->screen_type);
|
viewport_set_fullscreen(parent, screen->screen_type);
|
||||||
|
|
||||||
*logo = *parent;
|
*logo = *parent;
|
||||||
|
@ -242,10 +247,10 @@ static void usb_screens_draw(struct usb_screen_vps_t *usb_screen_vps_ar)
|
||||||
viewportmanager_set_statusbar(usb_bars);
|
viewportmanager_set_statusbar(usb_bars);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gui_usb_screen_run(void)
|
void gui_usb_screen_run(bool early_usb)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int old_bars = viewportmanager_get_statusbar();
|
int old_bars = early_usb ? 0 : viewportmanager_get_statusbar();
|
||||||
struct usb_screen_vps_t usb_screen_vps_ar[NB_SCREENS];
|
struct usb_screen_vps_t usb_screen_vps_ar[NB_SCREENS];
|
||||||
#if defined HAVE_TOUCHSCREEN
|
#if defined HAVE_TOUCHSCREEN
|
||||||
enum touchscreen_mode old_mode = touchscreen_get_mode();
|
enum touchscreen_mode old_mode = touchscreen_get_mode();
|
||||||
|
@ -270,7 +275,7 @@ void gui_usb_screen_run(void)
|
||||||
|
|
||||||
screen->set_viewport(NULL);
|
screen->set_viewport(NULL);
|
||||||
#ifdef HAVE_LCD_BITMAP
|
#ifdef HAVE_LCD_BITMAP
|
||||||
usb_screen_fix_viewports(screen, &usb_screen_vps_ar[i]);
|
usb_screen_fix_viewports(screen, &usb_screen_vps_ar[i], early_usb);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -318,9 +323,11 @@ void gui_usb_screen_run(void)
|
||||||
{
|
{
|
||||||
screens[i].backlight_on();
|
screens[i].backlight_on();
|
||||||
}
|
}
|
||||||
viewportmanager_set_statusbar(old_bars);
|
if (!early_usb)
|
||||||
send_event(GUI_EVENT_REFRESH, NULL);
|
{
|
||||||
|
viewportmanager_set_statusbar(old_bars);
|
||||||
|
send_event(GUI_EVENT_REFRESH, NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif /* !defined(USB_NONE) */
|
#endif /* !defined(USB_NONE) */
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
#ifndef _USB_SCREEN_H_
|
#ifndef _USB_SCREEN_H_
|
||||||
#define _USB_SCREEN_H_
|
#define _USB_SCREEN_H_
|
||||||
|
|
||||||
extern void gui_usb_screen_run(void);
|
extern void gui_usb_screen_run(bool early_usb);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -496,7 +496,7 @@ static void init(void)
|
||||||
(mmc_remove_request() == SYS_HOTSWAP_EXTRACTED))
|
(mmc_remove_request() == SYS_HOTSWAP_EXTRACTED))
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
gui_usb_screen_run();
|
gui_usb_screen_run(true);
|
||||||
mounted = true; /* mounting done @ end of USB mode */
|
mounted = true; /* mounting done @ end of USB mode */
|
||||||
}
|
}
|
||||||
#ifdef HAVE_USB_POWER
|
#ifdef HAVE_USB_POWER
|
||||||
|
@ -521,7 +521,7 @@ static void init(void)
|
||||||
lcd_update();
|
lcd_update();
|
||||||
|
|
||||||
while(button_get(true) != SYS_USB_CONNECTED) {};
|
while(button_get(true) != SYS_USB_CONNECTED) {};
|
||||||
gui_usb_screen_run();
|
gui_usb_screen_run(true);
|
||||||
system_reboot();
|
system_reboot();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -581,7 +581,7 @@ long default_event_handler_ex(long event, void (*callback)(void *), void *parame
|
||||||
check_bootfile(false); /* gets initial size */
|
check_bootfile(false); /* gets initial size */
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
gui_usb_screen_run();
|
gui_usb_screen_run(false);
|
||||||
#ifdef BOOTFILE
|
#ifdef BOOTFILE
|
||||||
#if !defined(USB_NONE) && !defined(USB_HANDLED_BY_OF)
|
#if !defined(USB_NONE) && !defined(USB_HANDLED_BY_OF)
|
||||||
check_bootfile(true);
|
check_bootfile(true);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue