diff options
Diffstat (limited to 'apps/gui')
| -rw-r--r-- | apps/gui/skin_engine/skin_render.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/apps/gui/skin_engine/skin_render.c b/apps/gui/skin_engine/skin_render.c index 67f1f0f..28483cb 100644 --- a/apps/gui/skin_engine/skin_render.c +++ b/apps/gui/skin_engine/skin_render.c @@ -779,7 +779,9 @@ void skin_render_viewport(struct skin_element* viewport, struct gui_wps *gwps, if (refresh_type && needs_update) { if (info.force_redraw) - display->scroll_stop_viewport_line(&skin_viewport->vp, info.line_number); + display->scroll_stop_viewport_rect(&skin_viewport->vp, + 0, info.line_number*display->getcharheight(), + skin_viewport->vp.width, display->getcharheight()); write_line(display, align, info.line_number, info.line_scrolls, info.text_style); } @@ -967,8 +969,11 @@ 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) { + struct viewport *vp = SKINOFFSETTOPTR(skin_buffer, viewer->vp); if (!info.force_redraw) - display->scroll_stop_viewport_line(&skin_viewport->vp, info.line_number); + display->scroll_stop_viewport_rect(vp, + 0, info.line_number*display->getcharheight(), + vp->width, display->getcharheight()); write_line(display, align, info.line_number, info.line_scrolls, info.text_style); } |