summaryrefslogtreecommitdiff
path: root/apps/gui/statusbar-skinned.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/gui/statusbar-skinned.c')
-rw-r--r--apps/gui/statusbar-skinned.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/apps/gui/statusbar-skinned.c b/apps/gui/statusbar-skinned.c
index 960cf67d4d..fc9735da21 100644
--- a/apps/gui/statusbar-skinned.c
+++ b/apps/gui/statusbar-skinned.c
@@ -50,6 +50,7 @@ static int update_delay = DEFAULT_UPDATE_DELAY;
50static bool sbs_has_title[NB_SCREENS]; 50static bool sbs_has_title[NB_SCREENS];
51static char* sbs_title[NB_SCREENS]; 51static char* sbs_title[NB_SCREENS];
52static enum themable_icons sbs_icon[NB_SCREENS]; 52static enum themable_icons sbs_icon[NB_SCREENS];
53static bool sbs_loaded[NB_SCREENS] = { false };
53 54
54bool sb_set_title_text(char* title, enum themable_icons icon, enum screen_type screen) 55bool sb_set_title_text(char* title, enum themable_icons icon, enum screen_type screen)
55{ 56{
@@ -76,6 +77,7 @@ enum themable_icons sb_get_icon(enum screen_type screen)
76int sb_preproccess(enum screen_type screen, struct wps_data *data) 77int sb_preproccess(enum screen_type screen, struct wps_data *data)
77{ 78{
78 (void)data; 79 (void)data;
80 sbs_loaded[screen] = false;
79 sbs_has_title[screen] = false; 81 sbs_has_title[screen] = false;
80 viewportmanager_theme_enable(screen, false, NULL); 82 viewportmanager_theme_enable(screen, false, NULL);
81 return 1; 83 return 1;
@@ -101,6 +103,7 @@ int sb_postproccess(enum screen_type screen, struct wps_data *data)
101 vp->hidden_flags = VP_NEVER_VISIBLE; 103 vp->hidden_flags = VP_NEVER_VISIBLE;
102 } 104 }
103 sb_set_info_vp(screen, VP_DEFAULT_LABEL); 105 sb_set_info_vp(screen, VP_DEFAULT_LABEL);
106 sbs_loaded[screen] = true;
104 } 107 }
105 viewportmanager_theme_undo(screen, false); 108 viewportmanager_theme_undo(screen, false);
106 return 1; 109 return 1;
@@ -115,6 +118,8 @@ void sb_set_info_vp(enum screen_type screen, OFFSETTYPE(char*) label)
115 118
116struct viewport *sb_skin_get_info_vp(enum screen_type screen) 119struct viewport *sb_skin_get_info_vp(enum screen_type screen)
117{ 120{
121 if (sbs_loaded[screen] == false)
122 return NULL;
118 struct wps_data *data = skin_get_gwps(CUSTOM_STATUSBAR, screen)->data; 123 struct wps_data *data = skin_get_gwps(CUSTOM_STATUSBAR, screen)->data;
119 struct skin_viewport *vp = NULL; 124 struct skin_viewport *vp = NULL;
120 char *label; 125 char *label;