summaryrefslogtreecommitdiff
path: root/apps/filetree.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2009-08-16 22:20:11 +0000
committerThomas Martitz <kugel@rockbox.org>2009-08-16 22:20:11 +0000
commit4c48b59be8ba41b80350d5329d0f13240229da0a (patch)
treee8cb9547c4d8d5faff39de2aef5626a5cabc689d /apps/filetree.c
parentc0897a8002d493244efd69fca5c433dbafe8d5be (diff)
User definable UI viewport, to be able to restrict the UI into a viewport for all bitmap displays.
Flyspray: FS#8799 This will allow for pretty themes, for example those with nice glass effects on their backdrops (some might argue they're wasting screen space but it's upto them), as well as allowing for future background WPS updates in the main UI. Plugins are not converted yet, they simply use the full screen. Ideally, any plugin that does *not* want the UI viewport, should take care of that itself (i.e. plugins should normally use the UI viewport). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22365 a1c6a512-1295-4272-9138-f99709370657
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 2d05bd54cf..ec7932435d 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 */