fix FS#9772 - the statusbars were not working correclty on multi screen targets in the WPS

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19742 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jonathan Gordon 2009-01-10 13:16:24 +00:00
parent 3482a55b83
commit 12b8f8de89
2 changed files with 14 additions and 0 deletions

View file

@ -85,7 +85,20 @@ static void gui_wps_statusbar_draw(struct gui_wps *wps, bool force)
if (wps->data->wps_sb_tag) if (wps->data->wps_sb_tag)
draw = wps->data->show_sb_on_wps; draw = wps->data->show_sb_on_wps;
#if NB_SCREENS > 1
/* multi screen targets could show the bars on one screen but not both
* so the viewportmanager can't be used in its current form...
* Also, the WPS is a special screen so doing this is reasonable.
*/
if (draw)
{
struct gui_statusbar *bar;
bar = &statusbars.statusbars[wps->data->remote_wps?SCREEN_REMOTE:SCREEN_MAIN];
gui_statusbar_draw(bar, force);
}
#else
viewportmanager_set_statusbar(draw); viewportmanager_set_statusbar(draw);
#endif
} }
#else #else
#define gui_wps_statusbar_draw(wps, force) #define gui_wps_statusbar_draw(wps, force)

View file

@ -128,6 +128,7 @@ long gui_wps_show(void)
int i; int i;
long last_left = 0, last_right = 0; long last_left = 0, last_right = 0;
viewportmanager_set_statusbar(false);
wps_state_init(); wps_state_init();
#ifdef HAVE_LCD_CHARCELLS #ifdef HAVE_LCD_CHARCELLS