summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2022-10-04 14:08:24 +0100
committerAidan MacDonald <amachronic@protonmail.com>2022-11-23 09:44:23 -0500
commit9368844ad17a11f28763cc7038d05bd51ddd970e (patch)
tree9dedcaad73058b3bed6b65b6723ab774e1d8cc74
parentf242b0ec6ccfcf97289929e75241c1bcfc2fd94f (diff)
downloadrockbox-9368844ad17a11f28763cc7038d05bd51ddd970e.tar.gz
rockbox-9368844ad17a11f28763cc7038d05bd51ddd970e.zip
skin engine: Remove progressbar viewport field
Again, we don't need to store the viewport in the progressbar struct because it's known at render time. Change-Id: I12514ceaace7c897194b18929364340871ef4635
-rw-r--r--apps/gui/skin_engine/skin_display.c5
-rw-r--r--apps/gui/skin_engine/skin_display.h3
-rw-r--r--apps/gui/skin_engine/skin_parser.c1
-rw-r--r--apps/gui/skin_engine/skin_render.c2
-rw-r--r--apps/gui/skin_engine/wps_internals.h1
5 files changed, 6 insertions, 6 deletions
diff --git a/apps/gui/skin_engine/skin_display.c b/apps/gui/skin_engine/skin_display.c
index 1a012dc1a6..2affd23c87 100644
--- a/apps/gui/skin_engine/skin_display.c
+++ b/apps/gui/skin_engine/skin_display.c
@@ -158,10 +158,11 @@ void ab_draw_markers(struct screen * screen, int capacity,
158 158
159#endif 159#endif
160 160
161void draw_progressbar(struct gui_wps *gwps, int line, struct progressbar *pb) 161void draw_progressbar(struct gui_wps *gwps, struct skin_viewport* skin_viewport,
162 int line, struct progressbar *pb)
162{ 163{
163 struct screen *display = gwps->display; 164 struct screen *display = gwps->display;
164 struct viewport *vp = SKINOFFSETTOPTR(get_skin_buffer(gwps->data), pb->vp); 165 struct viewport *vp = &skin_viewport->vp;
165 struct wps_state *state = get_wps_state(); 166 struct wps_state *state = get_wps_state();
166 struct mp3entry *id3 = state->id3; 167 struct mp3entry *id3 = state->id3;
167 int x = pb->x, y = pb->y, width = pb->width, height = pb->height; 168 int x = pb->x, y = pb->y, width = pb->width, height = pb->height;
diff --git a/apps/gui/skin_engine/skin_display.h b/apps/gui/skin_engine/skin_display.h
index 5ca66fa3ba..56af12aa03 100644
--- a/apps/gui/skin_engine/skin_display.h
+++ b/apps/gui/skin_engine/skin_display.h
@@ -29,7 +29,8 @@
29#define _SKIN_DISPLAY_H_ 29#define _SKIN_DISPLAY_H_
30 30
31 31
32void draw_progressbar(struct gui_wps *gwps, int line, struct progressbar *pb); 32void draw_progressbar(struct gui_wps *gwps, struct skin_viewport* skin_viewport,
33 int line, struct progressbar *pb);
33void draw_playlist_viewer_list(struct gui_wps *gwps, struct playlistviewer *viewer); 34void draw_playlist_viewer_list(struct gui_wps *gwps, struct playlistviewer *viewer);
34/* clears the area where the image was shown */ 35/* clears the area where the image was shown */
35void clear_image_pos(struct gui_wps *gwps, struct gui_img *img); 36void clear_image_pos(struct gui_wps *gwps, struct gui_img *img);
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index e68d5e4d3c..f59ae09e54 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -966,7 +966,6 @@ static int parse_progressbar_tag(struct skin_element* element,
966 966
967 if (!pb) 967 if (!pb)
968 return WPS_ERROR_INVALID_PARAM; 968 return WPS_ERROR_INVALID_PARAM;
969 pb->vp = PTRTOSKINOFFSET(skin_buffer, vp);
970 pb->follow_lang_direction = follow_lang_direction > 0; 969 pb->follow_lang_direction = follow_lang_direction > 0;
971 pb->nofill = false; 970 pb->nofill = false;
972 pb->noborder = false; 971 pb->noborder = false;
diff --git a/apps/gui/skin_engine/skin_render.c b/apps/gui/skin_engine/skin_render.c
index e8f081e7f5..07d8a13658 100644
--- a/apps/gui/skin_engine/skin_render.c
+++ b/apps/gui/skin_engine/skin_render.c
@@ -241,7 +241,7 @@ static bool do_non_text_tags(struct gui_wps *gwps, struct skin_draw_info *info,
241 { 241 {
242 struct progressbar *bar = (struct progressbar*)SKINOFFSETTOPTR(skin_buffer, token->value.data); 242 struct progressbar *bar = (struct progressbar*)SKINOFFSETTOPTR(skin_buffer, token->value.data);
243 if (do_refresh) 243 if (do_refresh)
244 draw_progressbar(gwps, info->line_number, bar); 244 draw_progressbar(gwps, info->skin_vp, info->line_number, bar);
245 } 245 }
246 break; 246 break;
247 case SKIN_TOKEN_IMAGE_DISPLAY: 247 case SKIN_TOKEN_IMAGE_DISPLAY:
diff --git a/apps/gui/skin_engine/wps_internals.h b/apps/gui/skin_engine/wps_internals.h
index 87ccb9ad89..1049954caf 100644
--- a/apps/gui/skin_engine/wps_internals.h
+++ b/apps/gui/skin_engine/wps_internals.h
@@ -112,7 +112,6 @@ struct image_display {
112 112
113struct progressbar { 113struct progressbar {
114 enum skin_token_type type; 114 enum skin_token_type type;
115 OFFSETTYPE(struct viewport *) vp;
116 /* regular pb */ 115 /* regular pb */
117 short x; 116 short x;
118 /* >=0: explicitly set in the tag -> y-coord within the viewport 117 /* >=0: explicitly set in the tag -> y-coord within the viewport