diff options
| author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-08-10 13:56:48 +0000 |
|---|---|---|
| committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-08-10 13:56:48 +0000 |
| commit | a547fc1b351f98f620ba61e240ebbf0729727e1c (patch) | |
| tree | 6ea6b02e597f6c673891b6386d84b9c1939e4569 | |
| parent | 1b53b99b75f6e4047222dcf24c6641dce26d930e (diff) | |
| download | rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.zip rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.gz rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.bz2 rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.xz | |
Fix FS#11527 - remote wps/sbs doesnt update correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27767 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/gui/statusbar-skinned.c | 11 | ||||
| -rw-r--r-- | apps/gui/wps.c | 5 |
2 files changed, 10 insertions, 6 deletions
diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c index 6a341d0..3b4dd24 100644 --- a/apps/gui/statusbar-skinned.c +++ b/apps/gui/statusbar-skinned.c @@ -195,15 +195,20 @@ void sb_skin_update(enum screen_type screen, bool force) if (lcd_active() || (i != SCREEN_MAIN)) #endif { - bool full_update = false; + bool full_update = sb_skin[i].sync_data->do_full_update; #if NB_SCREENS > 1 if (i==SCREEN_MAIN && sb_skin[i].sync_data->do_full_update) { - full_update = true; sb_skin[i].sync_data->do_full_update = false; + /* we need to make sure the remote gets a full update + * next time it is drawn also. so quick n dirty hack */ + next_update[SCREEN_REMOTE] = 0; + } + else if (next_update[SCREEN_REMOTE] == 0) + { + full_update = true; } #else - full_update = sb_skin[i].sync_data->do_full_update; sb_skin[i].sync_data->do_full_update = false; #endif skin_update(&sb_skin[i], force || full_update? diff --git a/apps/gui/wps.c b/apps/gui/wps.c index df00080..508446a 100644 --- a/apps/gui/wps.c +++ b/apps/gui/wps.c @@ -1113,6 +1113,7 @@ long gui_wps_show(void) #if defined(HAVE_BACKLIGHT) || defined(HAVE_REMOTE_LCD) gwps_caption_backlight(&wps_state); #endif + bool full_update = wps_sync_data.do_full_update; FOR_NB_SCREENS(i) { #if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) @@ -1121,15 +1122,13 @@ long gui_wps_show(void) if (lcd_active() || (i != SCREEN_MAIN)) #endif { - bool full_update = false; #if NB_SCREENS > 1 if (i==SCREEN_MAIN && wps_sync_data.do_full_update) { - full_update = true; wps_sync_data.do_full_update = false; } + #else - full_update = wps_sync_data.do_full_update; wps_sync_data.do_full_update = false; #endif skin_update(&gui_wps[i], full_update ? |