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 /apps | |
parent | 1b53b99b75f6e4047222dcf24c6641dce26d930e (diff) | |
download | rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.gz rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.zip |
Fix FS#11527 - remote wps/sbs doesnt update correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27767 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-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 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) | |||
195 | if (lcd_active() || (i != SCREEN_MAIN)) | 195 | if (lcd_active() || (i != SCREEN_MAIN)) |
196 | #endif | 196 | #endif |
197 | { | 197 | { |
198 | bool full_update = false; | 198 | bool full_update = sb_skin[i].sync_data->do_full_update; |
199 | #if NB_SCREENS > 1 | 199 | #if NB_SCREENS > 1 |
200 | if (i==SCREEN_MAIN && sb_skin[i].sync_data->do_full_update) | 200 | if (i==SCREEN_MAIN && sb_skin[i].sync_data->do_full_update) |
201 | { | 201 | { |
202 | full_update = true; | ||
203 | sb_skin[i].sync_data->do_full_update = false; | 202 | sb_skin[i].sync_data->do_full_update = false; |
203 | /* we need to make sure the remote gets a full update | ||
204 | * next time it is drawn also. so quick n dirty hack */ | ||
205 | next_update[SCREEN_REMOTE] = 0; | ||
206 | } | ||
207 | else if (next_update[SCREEN_REMOTE] == 0) | ||
208 | { | ||
209 | full_update = true; | ||
204 | } | 210 | } |
205 | #else | 211 | #else |
206 | full_update = sb_skin[i].sync_data->do_full_update; | ||
207 | sb_skin[i].sync_data->do_full_update = false; | 212 | sb_skin[i].sync_data->do_full_update = false; |
208 | #endif | 213 | #endif |
209 | skin_update(&sb_skin[i], force || full_update? | 214 | 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) | |||
1113 | #if defined(HAVE_BACKLIGHT) || defined(HAVE_REMOTE_LCD) | 1113 | #if defined(HAVE_BACKLIGHT) || defined(HAVE_REMOTE_LCD) |
1114 | gwps_caption_backlight(&wps_state); | 1114 | gwps_caption_backlight(&wps_state); |
1115 | #endif | 1115 | #endif |
1116 | bool full_update = wps_sync_data.do_full_update; | ||
1116 | FOR_NB_SCREENS(i) | 1117 | FOR_NB_SCREENS(i) |
1117 | { | 1118 | { |
1118 | #if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) | 1119 | #if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) |
@@ -1121,15 +1122,13 @@ long gui_wps_show(void) | |||
1121 | if (lcd_active() || (i != SCREEN_MAIN)) | 1122 | if (lcd_active() || (i != SCREEN_MAIN)) |
1122 | #endif | 1123 | #endif |
1123 | { | 1124 | { |
1124 | bool full_update = false; | ||
1125 | #if NB_SCREENS > 1 | 1125 | #if NB_SCREENS > 1 |
1126 | if (i==SCREEN_MAIN && wps_sync_data.do_full_update) | 1126 | if (i==SCREEN_MAIN && wps_sync_data.do_full_update) |
1127 | { | 1127 | { |
1128 | full_update = true; | ||
1129 | wps_sync_data.do_full_update = false; | 1128 | wps_sync_data.do_full_update = false; |
1130 | } | 1129 | } |
1130 | |||
1131 | #else | 1131 | #else |
1132 | full_update = wps_sync_data.do_full_update; | ||
1133 | wps_sync_data.do_full_update = false; | 1132 | wps_sync_data.do_full_update = false; |
1134 | #endif | 1133 | #endif |
1135 | skin_update(&gui_wps[i], full_update ? | 1134 | skin_update(&gui_wps[i], full_update ? |