1
0
Fork 0
forked from len0rd/rockbox

Fix FS#12357 - New backdrop not displayed after set backdrop from context menu

The loaded flag wasn't set and skin_backdrop_show() call was missing.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30846 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Thomas Martitz 2011-10-28 17:09:38 +00:00
parent 9886126858
commit e126153687
2 changed files with 11 additions and 9 deletions

View file

@ -205,14 +205,15 @@ void skin_backdrop_load_setting(void)
if (global_settings.backdrop_file[0] && if (global_settings.backdrop_file[0] &&
global_settings.backdrop_file[0] != '-') global_settings.backdrop_file[0] != '-')
{ {
if (!backdrops[i].buffer) if (!backdrops[i].buflib_handle <= 0)
{ {
bool loaded;
backdrops[i].buflib_handle = backdrops[i].buflib_handle =
core_alloc_ex(global_settings.backdrop_file, core_alloc_ex(global_settings.backdrop_file,
LCD_BACKDROP_BYTES, &buflib_ops); LCD_BACKDROP_BYTES, &buflib_ops);
if (backdrops[i].buflib_handle < 0) if (backdrops[i].buflib_handle < 0)
return; return;
}
bool loaded;
backdrops[i].buffer = core_get_data(backdrops[i].buflib_handle); backdrops[i].buffer = core_get_data(backdrops[i].buflib_handle);
handle_being_loaded = backdrops[i].buflib_handle; handle_being_loaded = backdrops[i].buflib_handle;
loaded = screens[SCREEN_MAIN].backdrop_load( loaded = screens[SCREEN_MAIN].backdrop_load(
@ -220,7 +221,7 @@ void skin_backdrop_load_setting(void)
backdrops[i].buffer); backdrops[i].buffer);
handle_being_loaded = -1; handle_being_loaded = -1;
backdrops[i].name[2] = loaded ? '.' : '\0'; backdrops[i].name[2] = loaded ? '.' : '\0';
} backdrops[i].loaded = loaded;
return; return;
} }
else else

View file

@ -1043,6 +1043,7 @@ static bool set_backdrop(void)
sizeof(global_settings.backdrop_file)); sizeof(global_settings.backdrop_file));
settings_save(); settings_save();
skin_backdrop_load_setting(); skin_backdrop_load_setting();
skin_backdrop_show(sb_get_backdrop(SCREEN_MAIN));
return true; return true;
} }
MENUITEM_FUNCTION(set_backdrop_item, 0, ID2P(LANG_SET_AS_BACKDROP), MENUITEM_FUNCTION(set_backdrop_item, 0, ID2P(LANG_SET_AS_BACKDROP),