From eee5423fe10f247f74d69404924edf3a0d54e8cd Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Fri, 29 Jan 2010 07:52:13 +0000 Subject: skin rework (FS#10922) notable changes: - simplify the setting/skin relationship. settings are used as the fallback if it's not specified in the skin - backdrop buffers are now in the skin buffer (which has also increased slightly to accomodate 1 backdrop for each skin and 2 full colour screens for bmps (up for 1.5)) - if no %X is specified in a skin then the backdrop setting will be used. use %Xd to explicitly disable a skin from displaying a backdrop - the base skin can now specify a backdrop. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24366 a1c6a512-1295-4272-9138-f99709370657 --- apps/menus/theme_menu.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'apps/menus/theme_menu.c') diff --git a/apps/menus/theme_menu.c b/apps/menus/theme_menu.c index accf9e14d4..7c19335df9 100644 --- a/apps/menus/theme_menu.c +++ b/apps/menus/theme_menu.c @@ -39,6 +39,7 @@ #include "exported_menus.h" #include "appevents.h" #include "viewport.h" +#include "statusbar-skinned.h" #if LCD_DEPTH > 1 /** @@ -47,11 +48,9 @@ static int clear_main_backdrop(void) { global_settings.backdrop_file[0]=0; - backdrop_unload(BACKDROP_MAIN); - backdrop_show(BACKDROP_MAIN); - /* force a full redraw so the whole backdrop is cleared */ + sb_set_backdrop(SCREEN_MAIN, NULL); viewportmanager_theme_enable(SCREEN_MAIN, false, NULL); - viewportmanager_theme_undo(SCREEN_MAIN, false); + viewportmanager_theme_undo(SCREEN_MAIN, true); settings_save(); return 0; } @@ -162,10 +161,7 @@ static int statusbar_callback_ex(int action,const struct menu_item_ex *this_item old_bar[screen] = statusbar_position(screen); break; case ACTION_EXIT_MENUITEM: - send_event(GUI_EVENT_STATUSBAR_TOGGLE, NULL); - /* force a full redraw */ - viewportmanager_theme_enable(screen, false, NULL); - viewportmanager_theme_undo(screen, false); + settings_apply_skins(); break; } return ACTION_REDRAW; -- cgit v1.2.3