diff options
Diffstat (limited to 'apps/gui/statusbar-skinned.c')
-rw-r--r-- | apps/gui/statusbar-skinned.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c index 58f58e4890..3f914bd922 100644 --- a/apps/gui/statusbar-skinned.c +++ b/apps/gui/statusbar-skinned.c | |||
@@ -139,6 +139,7 @@ int sb_get_backdrop(enum screen_type screen) | |||
139 | } | 139 | } |
140 | 140 | ||
141 | #endif | 141 | #endif |
142 | static bool force_waiting = false; | ||
142 | void sb_skin_update(enum screen_type screen, bool force) | 143 | void sb_skin_update(enum screen_type screen, bool force) |
143 | { | 144 | { |
144 | struct wps_data *data = skin_get_gwps(CUSTOM_STATUSBAR, screen)->data; | 145 | struct wps_data *data = skin_get_gwps(CUSTOM_STATUSBAR, screen)->data; |
@@ -146,8 +147,9 @@ void sb_skin_update(enum screen_type screen, bool force) | |||
146 | int i = screen; | 147 | int i = screen; |
147 | if (!data->wps_loaded) | 148 | if (!data->wps_loaded) |
148 | return; | 149 | return; |
149 | if (TIME_AFTER(current_tick, next_update[i]) || force) | 150 | if (TIME_AFTER(current_tick, next_update[i]) || force || force_waiting) |
150 | { | 151 | { |
152 | force_waiting = false; | ||
151 | #if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) | 153 | #if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) |
152 | /* currently, all remotes are readable without backlight | 154 | /* currently, all remotes are readable without backlight |
153 | * so still update those */ | 155 | * so still update those */ |
@@ -168,6 +170,7 @@ void do_sbs_update_callback(void *param) | |||
168 | /* the WPS handles changing the actual id3 data in the id3 pointers | 170 | /* the WPS handles changing the actual id3 data in the id3 pointers |
169 | * we imported, we just want a full update */ | 171 | * we imported, we just want a full update */ |
170 | skin_request_full_update(CUSTOM_STATUSBAR); | 172 | skin_request_full_update(CUSTOM_STATUSBAR); |
173 | force_waiting = true; | ||
171 | /* force timeout in wps main loop, so that the update is instantly */ | 174 | /* force timeout in wps main loop, so that the update is instantly */ |
172 | queue_post(&button_queue, BUTTON_NONE, 0); | 175 | queue_post(&button_queue, BUTTON_NONE, 0); |
173 | } | 176 | } |