summaryrefslogtreecommitdiff
path: root/apps/filetree.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/filetree.c')
-rw-r--r--apps/filetree.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/apps/filetree.c b/apps/filetree.c
index 2d05bd5..ec79324 100644
--- a/apps/filetree.c
+++ b/apps/filetree.c
@@ -181,6 +181,11 @@ static void check_file_thumbnails(struct tree_context* c)
closedir(dir);
}
+static void filetree_drawlists(void)
+{
+ gui_synclist_draw(&tree_lists);
+}
+
/* support function for qsort() */
static int compare(const void* p1, const void* p2)
{
@@ -508,7 +513,13 @@ int ft_enter(struct tree_context* c)
splash(0, ID2P(LANG_WAIT));
if (!settings_load_config(buf,true))
break;
- gui_synclist_draw(&tree_lists);
+ /* do both steps seperately so that the redrawing after theme
+ * changing is independant of whether the theme has a custom ui
+ * vp or not */
+ send_event(GUI_EVENT_REFRESH, NULL);
+ /* for the statusbar */
+ send_event(GUI_EVENT_ACTIONUPDATE, (void*)true);
+ filetree_drawlists();
splash(HZ, ID2P(LANG_SETTINGS_LOADED));
break;
@@ -618,6 +629,8 @@ int ft_enter(struct tree_context* c)
}
}
+ send_event(GUI_EVENT_REFRESH, filetree_drawlists);
+
if ( play ) {
/* the resume_index must always be the index in the
shuffled list in case shuffle is enabled */