diff options
Diffstat (limited to 'apps/gui/skin_engine/skin_display.c')
-rw-r--r-- | apps/gui/skin_engine/skin_display.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/apps/gui/skin_engine/skin_display.c b/apps/gui/skin_engine/skin_display.c index 01f8b13acb..4a87b69ce4 100644 --- a/apps/gui/skin_engine/skin_display.c +++ b/apps/gui/skin_engine/skin_display.c | |||
@@ -77,6 +77,9 @@ void skin_data_init(struct wps_data *wps_data) | |||
77 | wps_data->peak_meter_enabled = false; | 77 | wps_data->peak_meter_enabled = false; |
78 | wps_data->images = NULL; | 78 | wps_data->images = NULL; |
79 | wps_data->progressbars = NULL; | 79 | wps_data->progressbars = NULL; |
80 | #ifdef HAVE_ALBUMART | ||
81 | wps_data->albumart = NULL; | ||
82 | #endif | ||
80 | /* progress bars */ | 83 | /* progress bars */ |
81 | #else /* HAVE_LCD_CHARCELLS */ | 84 | #else /* HAVE_LCD_CHARCELLS */ |
82 | int i; | 85 | int i; |
@@ -265,6 +268,14 @@ static void wps_display_images(struct gui_wps *gwps, struct viewport* vp) | |||
265 | } | 268 | } |
266 | list = list->next; | 269 | list = list->next; |
267 | } | 270 | } |
271 | #ifdef HAVE_ALBUMART | ||
272 | /* now draw the AA */ | ||
273 | if (data->albumart && data->albumart->vp == vp && data->albumart->draw) | ||
274 | { | ||
275 | draw_album_art(gwps, audio_current_aa_hid(), false); | ||
276 | } | ||
277 | #endif | ||
278 | |||
268 | display->set_drawmode(DRMODE_SOLID); | 279 | display->set_drawmode(DRMODE_SOLID); |
269 | } | 280 | } |
270 | 281 | ||
@@ -465,8 +476,11 @@ static bool evaluate_conditional(struct gui_wps *gwps, int *token_index) | |||
465 | clear_image_pos(gwps, find_image(data->tokens[i].value.i&0xFF, gwps->data)); | 476 | clear_image_pos(gwps, find_image(data->tokens[i].value.i&0xFF, gwps->data)); |
466 | #endif | 477 | #endif |
467 | #ifdef HAVE_ALBUMART | 478 | #ifdef HAVE_ALBUMART |
468 | if (data->tokens[i].type == WPS_TOKEN_ALBUMART_DISPLAY) | 479 | if (data->albumart && data->tokens[i].type == WPS_TOKEN_ALBUMART_DISPLAY) |
480 | { | ||
469 | draw_album_art(gwps, audio_current_aa_hid(), true); | 481 | draw_album_art(gwps, audio_current_aa_hid(), true); |
482 | data->albumart->draw = false; | ||
483 | } | ||
470 | #endif | 484 | #endif |
471 | } | 485 | } |
472 | 486 | ||
@@ -961,9 +975,9 @@ static bool skin_redraw(struct gui_wps *gwps, unsigned refresh_mode) | |||
961 | skin_viewport->hidden_flags |= VP_DRAW_HIDDEN; | 975 | skin_viewport->hidden_flags |= VP_DRAW_HIDDEN; |
962 | } | 976 | } |
963 | } | 977 | } |
964 | 978 | int viewport_count = 0; | |
965 | for (viewport_list = data->viewports; | 979 | for (viewport_list = data->viewports; |
966 | viewport_list; viewport_list = viewport_list->next) | 980 | viewport_list; viewport_list = viewport_list->next, viewport_count++) |
967 | { | 981 | { |
968 | struct skin_viewport *skin_viewport = | 982 | struct skin_viewport *skin_viewport = |
969 | (struct skin_viewport *)viewport_list->token->value.data; | 983 | (struct skin_viewport *)viewport_list->token->value.data; |