diff options
-rw-r--r-- | apps/wps-display.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/apps/wps-display.c b/apps/wps-display.c index 973a9a3325..a0aeaf8e36 100644 --- a/apps/wps-display.c +++ b/apps/wps-display.c | |||
@@ -124,9 +124,13 @@ static bool wps_loaded = false; | |||
124 | /* Display images */ | 124 | /* Display images */ |
125 | static void wps_display_images(void) { | 125 | static void wps_display_images(void) { |
126 | int n; | 126 | int n; |
127 | lcd_set_drawmode(DRMODE_FG); | ||
128 | for (n = 0; n < MAX_IMAGES; n++) { | 127 | for (n = 0; n < MAX_IMAGES; n++) { |
129 | if (img[n].loaded && img[n].display) { | 128 | if (img[n].loaded && img[n].display) { |
129 | if(img[n].always_display) | ||
130 | lcd_set_drawmode(DRMODE_FG); | ||
131 | else | ||
132 | lcd_set_drawmode(DRMODE_SOLID); | ||
133 | |||
130 | lcd_mono_bitmap(img[n].ptr, img[n].x, img[n].y, img[n].w, img[n].h); | 134 | lcd_mono_bitmap(img[n].ptr, img[n].x, img[n].y, img[n].w, img[n].h); |
131 | lcd_update_rect(img[n].x, img[n].y, img[n].w, img[n].h); | 135 | lcd_update_rect(img[n].x, img[n].y, img[n].w, img[n].h); |
132 | } | 136 | } |
@@ -692,6 +696,7 @@ static char* get_tag(struct mp3entry* cid3, | |||
692 | return "\x01"; | 696 | return "\x01"; |
693 | #endif | 697 | #endif |
694 | case 's': /* shuffle */ | 698 | case 's': /* shuffle */ |
699 | *flags |= WPS_REFRESH_DYNAMIC; | ||
695 | if ( global_settings.playlist_shuffle ) | 700 | if ( global_settings.playlist_shuffle ) |
696 | return "s"; | 701 | return "s"; |
697 | else | 702 | else |
@@ -711,6 +716,7 @@ static char* get_tag(struct mp3entry* cid3, | |||
711 | switch (tag[1]) | 716 | switch (tag[1]) |
712 | { | 717 | { |
713 | case 'm': /* playback repeat mode */ | 718 | case 'm': /* playback repeat mode */ |
719 | *flags |= WPS_REFRESH_DYNAMIC; | ||
714 | *intval = global_settings.repeat_mode + 1; | 720 | *intval = global_settings.repeat_mode + 1; |
715 | snprintf(buf, buf_size, "%d", *intval); | 721 | snprintf(buf, buf_size, "%d", *intval); |
716 | return buf; | 722 | return buf; |
@@ -963,15 +969,10 @@ static void format_display(char* buf, | |||
963 | int level = 0; | 969 | int level = 0; |
964 | unsigned char tag_length; | 970 | unsigned char tag_length; |
965 | int intval; | 971 | int intval; |
966 | |||
967 | int cur_align; | 972 | int cur_align; |
968 | char* cur_align_start; | 973 | char* cur_align_start; |
969 | #ifdef HAVE_LCD_BITMAP | 974 | #ifdef HAVE_LCD_BITMAP |
970 | int n; | 975 | int n; |
971 | /* Set images to not to be displayed */ | ||
972 | for (n = 0; n < MAX_IMAGES; n++) { | ||
973 | img[n].display = false; | ||
974 | } | ||
975 | #endif | 976 | #endif |
976 | 977 | ||
977 | cur_align_start = buf; | 978 | cur_align_start = buf; |
@@ -1167,6 +1168,11 @@ bool wps_refresh(struct mp3entry* id3, | |||
1167 | or sleep is called but who knows...) | 1168 | or sleep is called but who knows...) |
1168 | */ | 1169 | */ |
1169 | bool enable_pm = false; | 1170 | bool enable_pm = false; |
1171 | |||
1172 | /* Set images to not to be displayed */ | ||
1173 | for (i = 0; i < MAX_IMAGES; i++) { | ||
1174 | img[i].display = false; | ||
1175 | } | ||
1170 | #endif | 1176 | #endif |
1171 | 1177 | ||
1172 | /* reset to first subline if refresh all flag is set */ | 1178 | /* reset to first subline if refresh all flag is set */ |
@@ -1522,15 +1528,15 @@ bool wps_refresh(struct mp3entry* id3, | |||
1522 | #ifdef HAVE_LCD_BITMAP | 1528 | #ifdef HAVE_LCD_BITMAP |
1523 | if (update_line) { | 1529 | if (update_line) { |
1524 | lcd_update_rect(0, i*h + offset, LCD_WIDTH, h); | 1530 | lcd_update_rect(0, i*h + offset, LCD_WIDTH, h); |
1525 | wps_display_images(); | ||
1526 | } | 1531 | } |
1527 | #endif | 1532 | #endif |
1528 | } | 1533 | } |
1529 | 1534 | ||
1530 | #ifdef HAVE_LCD_BITMAP | 1535 | #ifdef HAVE_LCD_BITMAP |
1531 | /* Display images marked as "always display" */ | 1536 | /* Display all images */ |
1532 | for (i = 0; i < MAX_IMAGES; i++) { | 1537 | for (i = 0; i < MAX_IMAGES; i++) { |
1533 | img[i].display = img[i].always_display; | 1538 | if(img[i].always_display) |
1539 | img[i].display = img[i].always_display; | ||
1534 | } | 1540 | } |
1535 | wps_display_images(); | 1541 | wps_display_images(); |
1536 | 1542 | ||