summaryrefslogtreecommitdiff
path: root/apps/gui/skin_engine/skin_parser.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2014-01-10 21:50:37 +0100
committerThomas Martitz <kugel@rockbox.org>2014-01-10 21:54:06 +0100
commitd4d3f3c494e48304d41eada0a4881a9d2b4b97f4 (patch)
tree2b656c825f1e668beae9893139a945d9c1adbdee /apps/gui/skin_engine/skin_parser.c
parent9cd3444e272bbffc5ca6dcf172577b0e7885a3d2 (diff)
downloadrockbox-d4d3f3c494e48304d41eada0a4881a9d2b4b97f4.tar.gz
rockbox-d4d3f3c494e48304d41eada0a4881a9d2b4b97f4.zip
skin engine: Fix FS#12884.
The %Vf and %Vb tags change the colors for the rest of the viewport. This requires the rest of the vp to be redrawn when they change due to a conditional. The previous code did this redraw in all cases (conditional or not) which led to visible blinking. Change-Id: Ie59dfc6fe8ed76485a2a2bd7caf1315f1944c227
Diffstat (limited to 'apps/gui/skin_engine/skin_parser.c')
-rw-r--r--apps/gui/skin_engine/skin_parser.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index 1946e179c0..1de1047583 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -700,15 +700,9 @@ static int parse_viewportcolour(struct skin_element *element,
700 if (element->line == curr_viewport_element->line) 700 if (element->line == curr_viewport_element->line)
701 { 701 {
702 if (token->type == SKIN_TOKEN_VIEWPORT_FGCOLOUR) 702 if (token->type == SKIN_TOKEN_VIEWPORT_FGCOLOUR)
703 {
704 curr_vp->start_fgcolour = colour->colour;
705 curr_vp->vp.fg_pattern = colour->colour; 703 curr_vp->vp.fg_pattern = colour->colour;
706 }
707 else 704 else
708 {
709 curr_vp->start_bgcolour = colour->colour;
710 curr_vp->vp.bg_pattern = colour->colour; 705 curr_vp->vp.bg_pattern = colour->colour;
711 }
712 } 706 }
713 return 0; 707 return 0;
714} 708}
@@ -1953,8 +1947,6 @@ static int convert_viewport(struct wps_data *data, struct skin_element* element)
1953 1947
1954#if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) 1948#if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1955 skin_vp->output_to_backdrop_buffer = false; 1949 skin_vp->output_to_backdrop_buffer = false;
1956 skin_vp->start_fgcolour = skin_vp->vp.fg_pattern;
1957 skin_vp->start_bgcolour = skin_vp->vp.bg_pattern;
1958#endif 1950#endif
1959#ifdef HAVE_LCD_COLOR 1951#ifdef HAVE_LCD_COLOR
1960 skin_vp->start_gradient.start = global_settings.lss_color; 1952 skin_vp->start_gradient.start = global_settings.lss_color;