summaryrefslogtreecommitdiffstats
path: root/apps/gui/statusbar-skinned.c
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2010-08-10 13:56:48 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2010-08-10 13:56:48 +0000
commita547fc1b351f98f620ba61e240ebbf0729727e1c (patch)
tree6ea6b02e597f6c673891b6386d84b9c1939e4569 /apps/gui/statusbar-skinned.c
parent1b53b99b75f6e4047222dcf24c6641dce26d930e (diff)
downloadrockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.gz
rockbox-a547fc1b351f98f620ba61e240ebbf0729727e1c.tar.bz2
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/gui/statusbar-skinned.c')
-rw-r--r--apps/gui/statusbar-skinned.c11
1 files changed, 8 insertions, 3 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)
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?