summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2011-12-14 12:53:19 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2011-12-14 12:53:19 +0000
commit13f1b08388fa2896ebdc0e52920b23a1e9703c40 (patch)
tree7ad05812359467916ea6d66a3afa98f5b49f265d /apps
parentb3caa010624248930eaf487b5e151bbe2b9b9f27 (diff)
downloadrockbox-13f1b08388fa2896ebdc0e52920b23a1e9703c40.zip
rockbox-13f1b08388fa2896ebdc0e52920b23a1e9703c40.tar.gz
rockbox-13f1b08388fa2896ebdc0e52920b23a1e9703c40.tar.bz2
rockbox-13f1b08388fa2896ebdc0e52920b23a1e9703c40.tar.xz
Allow scrolling lines to have their content changed without restarting the scroll line. This means skin lines with dynamic tags can be updated in realtime instead of delayed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31247 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/skin_engine/skin_render.c26
1 files changed, 8 insertions, 18 deletions
diff --git a/apps/gui/skin_engine/skin_render.c b/apps/gui/skin_engine/skin_render.c
index e408caa..7b80d8c 100644
--- a/apps/gui/skin_engine/skin_render.c
+++ b/apps/gui/skin_engine/skin_render.c
@@ -733,15 +733,10 @@ void skin_render_viewport(struct skin_element* viewport, struct gui_wps *gwps,
/* only update if the line needs to be, and there is something to write */
if (refresh_type && needs_update)
{
- if (info.line_scrolls)
- {
- /* if the line is a scrolling one we don't want to update
- too often, so that it has the time to scroll */
- if ((refresh_type & SKIN_REFRESH_SCROLL) || info.force_redraw)
- write_line(display, align, info.line_number, true, info.text_style);
- }
- else
- write_line(display, align, info.line_number, false, info.text_style);
+ if (!info.force_redraw)
+ display->scroll_stop_line(&skin_viewport->vp, info.line_number);
+ write_line(display, align, info.line_number,
+ info.line_scrolls, info.text_style);
}
if (!info.no_line_break)
info.line_number++;
@@ -907,15 +902,10 @@ void skin_render_playlistviewer(struct playlistviewer* viewer,
/* only update if the line needs to be, and there is something to write */
if (refresh_type && needs_update)
{
- if (info.line_scrolls)
- {
- /* if the line is a scrolling one we don't want to update
- too often, so that it has the time to scroll */
- if ((refresh_type & SKIN_REFRESH_SCROLL) || info.force_redraw)
- write_line(display, align, info.line_number, true, info.text_style);
- }
- else
- write_line(display, align, info.line_number, false, info.text_style);
+ if (!info.force_redraw)
+ display->scroll_stop_line(&skin_viewport->vp, info.line_number);
+ write_line(display, align, info.line_number,
+ info.line_scrolls, info.text_style);
}
info.line_number++;
info.offset++;