diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-08-02 14:12:44 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-08-02 14:12:44 +0000 |
commit | 75556fd57ff70be9a9cbc183cbacb71db520291d (patch) | |
tree | aa5e8db09ed267bc2e6351d7dc4778d4dae25f2a | |
parent | ee4f8a9a6bc313cd878f84a6c9832b6094685460 (diff) | |
download | rockbox-75556fd57ff70be9a9cbc183cbacb71db520291d.tar.gz rockbox-75556fd57ff70be9a9cbc183cbacb71db520291d.zip |
Fix FS#10926 - h300 wps wouldnt be updated correctly when the backlight turns off because the remote is being naughty
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27666 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/gui/statusbar-skinned.c | 16 | ||||
-rw-r--r-- | apps/gui/wps.c | 16 |
2 files changed, 27 insertions, 5 deletions
diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c index 81eb92923d..6a341d0e55 100644 --- a/apps/gui/statusbar-skinned.c +++ b/apps/gui/statusbar-skinned.c | |||
@@ -194,10 +194,22 @@ void sb_skin_update(enum screen_type screen, bool force) | |||
194 | * so still update those */ | 194 | * so still update those */ |
195 | if (lcd_active() || (i != SCREEN_MAIN)) | 195 | if (lcd_active() || (i != SCREEN_MAIN)) |
196 | #endif | 196 | #endif |
197 | skin_update(&sb_skin[i], force? | 197 | { |
198 | bool full_update = false; | ||
199 | #if NB_SCREENS > 1 | ||
200 | if (i==SCREEN_MAIN && sb_skin[i].sync_data->do_full_update) | ||
201 | { | ||
202 | full_update = true; | ||
203 | sb_skin[i].sync_data->do_full_update = false; | ||
204 | } | ||
205 | #else | ||
206 | full_update = sb_skin[i].sync_data->do_full_update; | ||
207 | sb_skin[i].sync_data->do_full_update = false; | ||
208 | #endif | ||
209 | skin_update(&sb_skin[i], force || full_update? | ||
198 | SKIN_REFRESH_ALL : SKIN_REFRESH_NON_STATIC); | 210 | SKIN_REFRESH_ALL : SKIN_REFRESH_NON_STATIC); |
211 | } | ||
199 | next_update[i] = current_tick + update_delay; /* don't update too often */ | 212 | next_update[i] = current_tick + update_delay; /* don't update too often */ |
200 | sb_skin[SCREEN_MAIN].sync_data->do_full_update = false; | ||
201 | } | 213 | } |
202 | } | 214 | } |
203 | 215 | ||
diff --git a/apps/gui/wps.c b/apps/gui/wps.c index 7d583a82b4..8b3f671e34 100644 --- a/apps/gui/wps.c +++ b/apps/gui/wps.c | |||
@@ -1116,11 +1116,21 @@ long gui_wps_show(void) | |||
1116 | if (lcd_active() || (i != SCREEN_MAIN)) | 1116 | if (lcd_active() || (i != SCREEN_MAIN)) |
1117 | #endif | 1117 | #endif |
1118 | { | 1118 | { |
1119 | skin_update(&gui_wps[i], wps_sync_data.do_full_update ? | 1119 | bool full_update = false; |
1120 | SKIN_REFRESH_ALL : SKIN_REFRESH_NON_STATIC); | 1120 | #if NB_SCREENS > 1 |
1121 | if (i==SCREEN_MAIN && wps_sync_data.do_full_update) | ||
1122 | { | ||
1123 | full_update = true; | ||
1124 | wps_sync_data.do_full_update = false; | ||
1125 | } | ||
1126 | #else | ||
1127 | full_update = wps_sync_data.do_full_update; | ||
1128 | wps_sync_data.do_full_update = false; | ||
1129 | #endif | ||
1130 | skin_update(&gui_wps[i], full_update ? | ||
1131 | SKIN_REFRESH_ALL : SKIN_REFRESH_NON_STATIC); | ||
1121 | } | 1132 | } |
1122 | } | 1133 | } |
1123 | wps_sync_data.do_full_update = false; | ||
1124 | update = false; | 1134 | update = false; |
1125 | } | 1135 | } |
1126 | 1136 | ||