diff options
Diffstat (limited to 'apps/gui/statusbar-skinned.c')
-rw-r--r-- | apps/gui/statusbar-skinned.c | 5 |
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; | |||
50 | static bool sbs_has_title[NB_SCREENS]; | 50 | static bool sbs_has_title[NB_SCREENS]; |
51 | static char* sbs_title[NB_SCREENS]; | 51 | static char* sbs_title[NB_SCREENS]; |
52 | static enum themable_icons sbs_icon[NB_SCREENS]; | 52 | static enum themable_icons sbs_icon[NB_SCREENS]; |
53 | static bool sbs_loaded[NB_SCREENS] = { false }; | ||
53 | 54 | ||
54 | bool sb_set_title_text(char* title, enum themable_icons icon, enum screen_type screen) | 55 | bool 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) | |||
76 | int sb_preproccess(enum screen_type screen, struct wps_data *data) | 77 | int 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 | ||
116 | struct viewport *sb_skin_get_info_vp(enum screen_type screen) | 119 | struct 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; |