From a547fc1b351f98f620ba61e240ebbf0729727e1c Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Tue, 10 Aug 2010 13:56:48 +0000 Subject: Fix FS#11527 - remote wps/sbs doesnt update correctly git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27767 a1c6a512-1295-4272-9138-f99709370657 --- apps/gui/statusbar-skinned.c | 11 ++++++++--- apps/gui/wps.c | 5 ++--- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'apps') diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c index 6a341d0e55..3b4dd24512 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 df00080f2c..508446ab98 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 ? -- cgit v1.2.3