summaryrefslogtreecommitdiffstats
path: root/apps/gui
diff options
context:
space:
mode:
Diffstat (limited to 'apps/gui')
-rw-r--r--apps/gui/list.c23
-rw-r--r--apps/gui/list.h1
2 files changed, 15 insertions, 9 deletions
diff --git a/apps/gui/list.c b/apps/gui/list.c
index e05e44008b..f875a6559e 100644
--- a/apps/gui/list.c
+++ b/apps/gui/list.c
@@ -101,15 +101,7 @@ static void list_init_viewports(struct gui_synclist *list)
{
FOR_NB_SCREENS(i)
{
- list->parent[i] = &parent[i];
- viewport_set_defaults(&parent[i], i);
-#ifdef HAVE_TOUCHSCREEN
- parent[i].line_height = list_line_height(list->parent[i]);
-#endif
-#ifdef HAVE_BUTTONBAR
- if (screens[i].has_buttonbar)
- list->parent[i]->height -= BUTTONBAR_HEIGHT;
-#endif
+ gui_synclist_set_viewport_defaults(list->parent[i], i);
}
}
list->dirty_tick = current_tick;
@@ -502,6 +494,19 @@ void gui_synclist_set_voice_callback(struct gui_synclist * lists,
lists->callback_speak_item = voice_callback;
}
+void gui_synclist_set_viewport_defaults(struct viewport *vp,
+ enum screen_type screen)
+{
+ viewport_set_defaults(vp, screen);
+#ifdef HAVE_TOUCHSCREEN
+ vp->line_height = list_line_height(vp);
+#endif
+#ifdef HAVE_BUTTONBAR
+ if (screens[screen].has_buttonbar)
+ vp->height -= BUTTONBAR_HEIGHT;
+#endif
+}
+
#ifdef HAVE_LCD_COLOR
void gui_synclist_set_color_callback(struct gui_synclist * lists,
list_get_color color_callback)
diff --git a/apps/gui/list.h b/apps/gui/list.h
index 636d36c318..1a713daa36 100644
--- a/apps/gui/list.h
+++ b/apps/gui/list.h
@@ -145,6 +145,7 @@ extern void gui_synclist_init(
extern void gui_synclist_set_nb_items(struct gui_synclist * lists, int nb_items);
extern void gui_synclist_set_icon_callback(struct gui_synclist * lists, list_get_icon icon_callback);
extern void gui_synclist_set_voice_callback(struct gui_synclist * lists, list_speak_item voice_callback);
+extern void gui_synclist_set_viewport_defaults(struct viewport *vp, enum screen_type screen);
#ifdef HAVE_LCD_COLOR
extern void gui_synclist_set_color_callback(struct gui_synclist * lists, list_get_color color_callback);
#endif