skin engine: Remove playlistviewer viewport field

We already know the viewport at render time (I think... at least
this seems to be the case for themes I tested) so there's no need
to store a pointer to the viewport.

Change-Id: I75fa2262e96c6f735e6b5da33cd4ca9ac68cd2ee
This commit is contained in:
Aidan MacDonald 2022-10-04 14:02:44 +01:00
parent 7de16eee26
commit 38687821b2
3 changed files with 2 additions and 4 deletions

View file

@ -494,7 +494,6 @@ static int parse_playlistview(struct skin_element *element,
struct playlistviewer *viewer = skin_buffer_alloc(sizeof(*viewer)); struct playlistviewer *viewer = skin_buffer_alloc(sizeof(*viewer));
if (!viewer) if (!viewer)
return WPS_ERROR_INVALID_PARAM; return WPS_ERROR_INVALID_PARAM;
viewer->vp = PTRTOSKINOFFSET(skin_buffer, &curr_vp->vp);
viewer->show_icons = true; viewer->show_icons = true;
viewer->start_offset = get_param(element, 0)->data.number; viewer->start_offset = get_param(element, 0)->data.number;
viewer->line = PTRTOSKINOFFSET(skin_buffer, get_param_code(element, 1)); viewer->line = PTRTOSKINOFFSET(skin_buffer, get_param_code(element, 1));

View file

@ -937,7 +937,7 @@ void skin_render_playlistviewer(struct playlistviewer* viewer,
struct align_pos * align = &info.align; struct align_pos * align = &info.align;
bool needs_update; bool needs_update;
int cur_pos, start_item, max; int cur_pos, start_item, max;
int nb_lines = viewport_get_nb_lines(SKINOFFSETTOPTR(skin_buffer, viewer->vp)); int nb_lines = viewport_get_nb_lines(&skin_viewport->vp);
#if CONFIG_TUNER #if CONFIG_TUNER
if (get_current_activity() == ACTIVITY_FM) if (get_current_activity() == ACTIVITY_FM)
{ {
@ -983,7 +983,7 @@ void skin_render_playlistviewer(struct playlistviewer* viewer,
/* only update if the line needs to be, and there is something to write */ /* only update if the line needs to be, and there is something to write */
if (refresh_type && needs_update) if (refresh_type && needs_update)
{ {
struct viewport *vp = SKINOFFSETTOPTR(skin_buffer, viewer->vp); struct viewport *vp = &skin_viewport->vp;
if (!info.force_redraw) if (!info.force_redraw)
display->scroll_stop_viewport_rect(vp, display->scroll_stop_viewport_rect(vp,
0, info.line_number*display->getcharheight(), 0, info.line_number*display->getcharheight(),

View file

@ -244,7 +244,6 @@ struct touchregion_lastpress {
#endif #endif
struct playlistviewer { struct playlistviewer {
OFFSETTYPE(struct viewport *) vp;
bool show_icons; bool show_icons;
int start_offset; int start_offset;
OFFSETTYPE(struct skin_element *) line; OFFSETTYPE(struct skin_element *) line;