diff options
author | Thomas Martitz <kugel@rockbox.org> | 2009-08-03 15:06:30 +0000 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2009-08-03 15:06:30 +0000 |
commit | 3b75c86d74937a6bffcb371bb08bdfb182db9d2b (patch) | |
tree | 3be12a89b7a5377a31a46b48e672e08af36ac949 /apps | |
parent | 0dc5cc8002e3d30fc7ae7ddf7f33a56c8b136e7e (diff) | |
download | rockbox-3b75c86d74937a6bffcb371bb08bdfb182db9d2b.tar.gz rockbox-3b75c86d74937a6bffcb371bb08bdfb182db9d2b.zip |
A bit mroe wps/skin engine cleanup so that the structs the wps uses can be static:
-add wrappers wps_data_load() and wps_data_init() so that other code doesn't need the structs for that
-change (and rename) gui_sync_wps_uses_albumart() to take points to be filled as parameter to get the AA size of a wps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22139 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/filetree.c | 6 | ||||
-rw-r--r-- | apps/gui/skin_engine/skin_engine.h | 11 | ||||
-rw-r--r-- | apps/gui/skin_engine/wps_internals.h | 7 | ||||
-rw-r--r-- | apps/gui/skin_engine/wps_parser.c | 12 | ||||
-rw-r--r-- | apps/gui/wps.c | 30 | ||||
-rw-r--r-- | apps/gui/wps.h | 13 | ||||
-rw-r--r-- | apps/menus/main_menu.c | 19 | ||||
-rw-r--r-- | apps/playback.c | 3 | ||||
-rw-r--r-- | apps/playback.h | 2 | ||||
-rw-r--r-- | apps/recorder/albumart.c | 18 | ||||
-rw-r--r-- | apps/settings.c | 18 |
11 files changed, 82 insertions, 57 deletions
diff --git a/apps/filetree.c b/apps/filetree.c index 8e97a0d13c..e6be09ad6c 100644 --- a/apps/filetree.c +++ b/apps/filetree.c | |||
@@ -51,7 +51,7 @@ | |||
51 | #if CONFIG_TUNER | 51 | #if CONFIG_TUNER |
52 | #include "radio.h" | 52 | #include "radio.h" |
53 | #endif | 53 | #endif |
54 | #include "skin_engine/skin_engine.h" | 54 | #include "wps.h" |
55 | #include "backdrop.h" | 55 | #include "backdrop.h" |
56 | 56 | ||
57 | static int compare_sort_dir; /* qsort key for sorting directories */ | 57 | static int compare_sort_dir; /* qsort key for sorting directories */ |
@@ -484,7 +484,7 @@ int ft_enter(struct tree_context* c) | |||
484 | #if LCD_DEPTH > 1 | 484 | #if LCD_DEPTH > 1 |
485 | unload_wps_backdrop(); | 485 | unload_wps_backdrop(); |
486 | #endif | 486 | #endif |
487 | skin_data_load(gui_wps[0].data, &screens[0], buf, true); | 487 | wps_data_load(SCREEN_MAIN, buf, true); |
488 | set_file(buf, (char *)global_settings.wps_file, | 488 | set_file(buf, (char *)global_settings.wps_file, |
489 | MAX_FILENAME); | 489 | MAX_FILENAME); |
490 | break; | 490 | break; |
@@ -496,7 +496,7 @@ int ft_enter(struct tree_context* c) | |||
496 | #if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 | 496 | #if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 |
497 | unload_remote_wps_backdrop(); | 497 | unload_remote_wps_backdrop(); |
498 | #endif | 498 | #endif |
499 | skin_data_load(gui_wps[1].data, &screens[1], buf, true); | 499 | wps_data_load(SCREEN_REMOTE, buf, true); |
500 | set_file(buf, (char *)global_settings.rwps_file, | 500 | set_file(buf, (char *)global_settings.rwps_file, |
501 | MAX_FILENAME); | 501 | MAX_FILENAME); |
502 | break; | 502 | break; |
diff --git a/apps/gui/skin_engine/skin_engine.h b/apps/gui/skin_engine/skin_engine.h index 00232a327a..498444e8ea 100644 --- a/apps/gui/skin_engine/skin_engine.h +++ b/apps/gui/skin_engine/skin_engine.h | |||
@@ -30,11 +30,6 @@ | |||
30 | int wps_get_touchaction(struct wps_data *data); | 30 | int wps_get_touchaction(struct wps_data *data); |
31 | #endif | 31 | #endif |
32 | 32 | ||
33 | #ifdef HAVE_ALBUMART | ||
34 | /* gives back if WPS contains an albumart tag */ | ||
35 | bool gui_sync_wps_uses_albumart(void); | ||
36 | #endif | ||
37 | |||
38 | /* setup and display a WPS for the first time */ | 33 | /* setup and display a WPS for the first time */ |
39 | bool gui_wps_display(struct gui_wps *gwps); | 34 | bool gui_wps_display(struct gui_wps *gwps); |
40 | 35 | ||
@@ -52,8 +47,6 @@ void skin_data_load(struct wps_data *wps_data, | |||
52 | bool isfile); | 47 | bool isfile); |
53 | 48 | ||
54 | 49 | ||
55 | 50 | /* initial setup of wps_data */ | |
56 | 51 | void skin_data_init(struct wps_data *wps_data); | |
57 | |||
58 | |||
59 | #endif | 52 | #endif |
diff --git a/apps/gui/skin_engine/wps_internals.h b/apps/gui/skin_engine/wps_internals.h index 2dcaa504bb..c00a4f1945 100644 --- a/apps/gui/skin_engine/wps_internals.h +++ b/apps/gui/skin_engine/wps_internals.h | |||
@@ -470,9 +470,6 @@ struct wps_data | |||
470 | unsigned int button_time_volume; | 470 | unsigned int button_time_volume; |
471 | }; | 471 | }; |
472 | 472 | ||
473 | /* initial setup of wps_data */ | ||
474 | void wps_data_init(struct wps_data *wps_data); | ||
475 | |||
476 | 473 | ||
477 | /* Redraw statusbars if necessary */ | 474 | /* Redraw statusbars if necessary */ |
478 | void gwps_draw_statusbars(void); | 475 | void gwps_draw_statusbars(void); |
@@ -536,10 +533,6 @@ struct gui_wps | |||
536 | /* gui_wps end */ | 533 | /* gui_wps end */ |
537 | 534 | ||
538 | 535 | ||
539 | /* currently only on wps_state is needed */ | ||
540 | extern struct wps_state wps_state; | ||
541 | extern struct gui_wps gui_wps[NB_SCREENS]; | ||
542 | |||
543 | /***** wps_tokens.c ******/ | 536 | /***** wps_tokens.c ******/ |
544 | 537 | ||
545 | const char *get_token_value(struct gui_wps *gwps, | 538 | const char *get_token_value(struct gui_wps *gwps, |
diff --git a/apps/gui/skin_engine/wps_parser.c b/apps/gui/skin_engine/wps_parser.c index a3e5f6861d..2c6d5ded95 100644 --- a/apps/gui/skin_engine/wps_parser.c +++ b/apps/gui/skin_engine/wps_parser.c | |||
@@ -1552,7 +1552,7 @@ static void wps_images_clear(struct wps_data *data) | |||
1552 | #endif | 1552 | #endif |
1553 | 1553 | ||
1554 | /* initial setup of wps_data */ | 1554 | /* initial setup of wps_data */ |
1555 | void wps_data_init(struct wps_data *wps_data) | 1555 | void skin_data_init(struct wps_data *wps_data) |
1556 | { | 1556 | { |
1557 | #ifdef HAVE_LCD_BITMAP | 1557 | #ifdef HAVE_LCD_BITMAP |
1558 | wps_images_clear(wps_data); | 1558 | wps_images_clear(wps_data); |
@@ -1581,7 +1581,7 @@ static void wps_reset(struct wps_data *data) | |||
1581 | bool rwps = data->remote_wps; /* remember whether the data is for a RWPS */ | 1581 | bool rwps = data->remote_wps; /* remember whether the data is for a RWPS */ |
1582 | #endif | 1582 | #endif |
1583 | memset(data, 0, sizeof(*data)); | 1583 | memset(data, 0, sizeof(*data)); |
1584 | wps_data_init(data); | 1584 | skin_data_init(data); |
1585 | #ifdef HAVE_REMOTE_LCD | 1585 | #ifdef HAVE_REMOTE_LCD |
1586 | data->remote_wps = rwps; | 1586 | data->remote_wps = rwps; |
1587 | #endif | 1587 | #endif |
@@ -1666,7 +1666,7 @@ static bool load_wps_bitmaps(struct wps_data *wps_data, char *bmpdir) | |||
1666 | 1666 | ||
1667 | /* to setup up the wps-data from a format-buffer (isfile = false) | 1667 | /* to setup up the wps-data from a format-buffer (isfile = false) |
1668 | from a (wps-)file (isfile = true)*/ | 1668 | from a (wps-)file (isfile = true)*/ |
1669 | static bool wps_data_load(struct wps_data *wps_data, | 1669 | static bool _skin_data_load(struct wps_data *wps_data, |
1670 | struct screen *display, | 1670 | struct screen *display, |
1671 | const char *buf, | 1671 | const char *buf, |
1672 | bool isfile) | 1672 | bool isfile) |
@@ -1820,7 +1820,7 @@ void skin_data_load(struct wps_data *wps_data, | |||
1820 | const char *buf, | 1820 | const char *buf, |
1821 | bool isfile) | 1821 | bool isfile) |
1822 | { | 1822 | { |
1823 | bool loaded_ok = buf && wps_data_load(wps_data, display, buf, isfile); | 1823 | bool loaded_ok = buf && _skin_data_load(wps_data, display, buf, isfile); |
1824 | if (!loaded_ok) /* load the hardcoded default */ | 1824 | if (!loaded_ok) /* load the hardcoded default */ |
1825 | { | 1825 | { |
1826 | /* set the default wps for the main-screen */ | 1826 | /* set the default wps for the main-screen */ |
@@ -1829,7 +1829,7 @@ void skin_data_load(struct wps_data *wps_data, | |||
1829 | #if LCD_DEPTH > 1 | 1829 | #if LCD_DEPTH > 1 |
1830 | unload_wps_backdrop(); | 1830 | unload_wps_backdrop(); |
1831 | #endif | 1831 | #endif |
1832 | wps_data_load(wps_data, | 1832 | _skin_data_load(wps_data, |
1833 | display, | 1833 | display, |
1834 | #ifdef HAVE_LCD_BITMAP | 1834 | #ifdef HAVE_LCD_BITMAP |
1835 | "%s%?it<%?in<%in. |>%it|%fn>\n" | 1835 | "%s%?it<%?in<%in. |>%it|%fn>\n" |
@@ -1852,7 +1852,7 @@ void skin_data_load(struct wps_data *wps_data, | |||
1852 | #if LCD_REMOTE_DEPTH > 1 | 1852 | #if LCD_REMOTE_DEPTH > 1 |
1853 | unload_remote_wps_backdrop(); | 1853 | unload_remote_wps_backdrop(); |
1854 | #endif | 1854 | #endif |
1855 | wps_data_load(wps_data, | 1855 | _skin_data_load(wps_data, |
1856 | display, | 1856 | display, |
1857 | "%s%?ia<%ia|%?d2<%d2|(root)>>\n" | 1857 | "%s%?ia<%ia|%?d2<%d2|(root)>>\n" |
1858 | "%s%?it<%?in<%in. |>%it|%fn>\n" | 1858 | "%s%?it<%?in<%in. |>%it|%fn>\n" |
diff --git a/apps/gui/wps.c b/apps/gui/wps.c index 4a7de875d2..447c1d6b00 100644 --- a/apps/gui/wps.c +++ b/apps/gui/wps.c | |||
@@ -75,8 +75,8 @@ | |||
75 | 75 | ||
76 | static int wpsbars; | 76 | static int wpsbars; |
77 | /* currently only one wps_state is needed */ | 77 | /* currently only one wps_state is needed */ |
78 | struct wps_state wps_state; | 78 | static struct wps_state wps_state; |
79 | struct gui_wps gui_wps[NB_SCREENS]; | 79 | static struct gui_wps gui_wps[NB_SCREENS]; |
80 | static struct wps_data wps_datas[NB_SCREENS]; | 80 | static struct wps_data wps_datas[NB_SCREENS]; |
81 | 81 | ||
82 | /* initial setup of wps_data */ | 82 | /* initial setup of wps_data */ |
@@ -90,6 +90,19 @@ static void nextid3available_callback(void* param); | |||
90 | /* 3% of 30min file == 54s step size */ | 90 | /* 3% of 30min file == 54s step size */ |
91 | #define MIN_FF_REWIND_STEP 500 | 91 | #define MIN_FF_REWIND_STEP 500 |
92 | 92 | ||
93 | void wps_data_load(enum screen_type screen, const char *buf, bool is_file) | ||
94 | { | ||
95 | skin_data_load(gui_wps[screen].data, &screens[screen], buf, is_file); | ||
96 | #ifdef HAVE_REMOVE_LCD | ||
97 | gui_wps[screen].data->remote_wps = !(screen == SCREEN_MAIN); | ||
98 | #endif | ||
99 | } | ||
100 | |||
101 | void wps_data_init(enum screen_type screen) | ||
102 | { | ||
103 | skin_data_init(gui_wps[screen].data); | ||
104 | } | ||
105 | |||
93 | bool wps_fading_out = false; | 106 | bool wps_fading_out = false; |
94 | void fade(bool fade_in, bool updatewps) | 107 | void fade(bool fade_in, bool updatewps) |
95 | { | 108 | { |
@@ -165,6 +178,7 @@ bool update_onvol_change(struct gui_wps * gwps) | |||
165 | return false; | 178 | return false; |
166 | } | 179 | } |
167 | 180 | ||
181 | |||
168 | bool ffwd_rew(int button) | 182 | bool ffwd_rew(int button) |
169 | { | 183 | { |
170 | unsigned int step = 0; /* current ff/rewind step */ | 184 | unsigned int step = 0; /* current ff/rewind step */ |
@@ -1176,7 +1190,7 @@ void gui_sync_wps_init(void) | |||
1176 | int i; | 1190 | int i; |
1177 | FOR_NB_SCREENS(i) | 1191 | FOR_NB_SCREENS(i) |
1178 | { | 1192 | { |
1179 | wps_data_init(&wps_datas[i]); | 1193 | skin_data_init(&wps_datas[i]); |
1180 | #ifdef HAVE_ALBUMART | 1194 | #ifdef HAVE_ALBUMART |
1181 | wps_datas[i].wps_uses_albumart = 0; | 1195 | wps_datas[i].wps_uses_albumart = 0; |
1182 | #endif | 1196 | #endif |
@@ -1201,15 +1215,19 @@ void gui_sync_wps_init(void) | |||
1201 | } | 1215 | } |
1202 | 1216 | ||
1203 | #ifdef HAVE_ALBUMART | 1217 | #ifdef HAVE_ALBUMART |
1204 | /* Returns true if at least one of the gui_wps screens has an album art | 1218 | bool wps_uses_albumart(int *width, int *height) |
1205 | tag in its wps structure */ | ||
1206 | bool gui_sync_wps_uses_albumart(void) | ||
1207 | { | 1219 | { |
1208 | int i; | 1220 | int i; |
1209 | FOR_NB_SCREENS(i) { | 1221 | FOR_NB_SCREENS(i) { |
1210 | struct gui_wps *gwps = &gui_wps[i]; | 1222 | struct gui_wps *gwps = &gui_wps[i]; |
1211 | if (gwps->data && (gwps->data->wps_uses_albumart != WPS_ALBUMART_NONE)) | 1223 | if (gwps->data && (gwps->data->wps_uses_albumart != WPS_ALBUMART_NONE)) |
1224 | { | ||
1225 | if (width) | ||
1226 | *width = gui_wps[0].data->albumart_max_width; | ||
1227 | if (height) | ||
1228 | *height = gui_wps[0].data->albumart_max_height; | ||
1212 | return true; | 1229 | return true; |
1230 | } | ||
1213 | } | 1231 | } |
1214 | return false; | 1232 | return false; |
1215 | } | 1233 | } |
diff --git a/apps/gui/wps.h b/apps/gui/wps.h index 90614cb65b..b8cb7d2ffa 100644 --- a/apps/gui/wps.h +++ b/apps/gui/wps.h | |||
@@ -34,4 +34,17 @@ bool ffwd_rew(int button); | |||
34 | void display_keylock_text(bool locked); | 34 | void display_keylock_text(bool locked); |
35 | 35 | ||
36 | bool is_wps_fading(void); | 36 | bool is_wps_fading(void); |
37 | |||
38 | /* wrapper for the wps to load the skin (.wps/.rwps) files */ | ||
39 | void wps_data_load(enum screen_type, const char *, bool); | ||
40 | void wps_data_init(enum screen_type); | ||
41 | |||
42 | #ifdef HAVE_ALBUMART | ||
43 | /* | ||
44 | * Returns true if at least one of the gui_wps screens has an album art | ||
45 | * tag in its wps structure and writes the width and height into the passed | ||
46 | * pointers | ||
47 | */ | ||
48 | bool wps_uses_albumart(int*, int*); | ||
49 | #endif | ||
37 | #endif | 50 | #endif |
diff --git a/apps/menus/main_menu.c b/apps/menus/main_menu.c index b535662f13..781b6f488a 100644 --- a/apps/menus/main_menu.c +++ b/apps/menus/main_menu.c | |||
@@ -50,7 +50,7 @@ | |||
50 | #endif | 50 | #endif |
51 | #include "version.h" | 51 | #include "version.h" |
52 | #include "time.h" | 52 | #include "time.h" |
53 | #include "skin_engine/skin_engine.h" | 53 | #include "wps.h" |
54 | 54 | ||
55 | static const struct browse_folder_info config = {ROCKBOX_DIR, SHOW_CFG}; | 55 | static const struct browse_folder_info config = {ROCKBOX_DIR, SHOW_CFG}; |
56 | 56 | ||
@@ -253,17 +253,19 @@ static char* info_getname(int selected_item, void *data, | |||
253 | break; | 253 | break; |
254 | #ifdef HAVE_ALBUMART | 254 | #ifdef HAVE_ALBUMART |
255 | case INFO_ALBUMART: /* album art dimenstions */ | 255 | case INFO_ALBUMART: /* album art dimenstions */ |
256 | if (gui_sync_wps_uses_albumart()) | 256 | { |
257 | int width = 0, height = 0; | ||
258 | if (wps_uses_albumart(&width, &height)) | ||
257 | { | 259 | { |
258 | snprintf(buffer, buffer_len, "%s %dx%d", str(LANG_ALBUMART), | 260 | snprintf(buffer, buffer_len, "%s %dx%d", str(LANG_ALBUMART), |
259 | gui_wps[0].data->albumart_max_width, | 261 | width, height); |
260 | gui_wps[0].data->albumart_max_height); | ||
261 | } | 262 | } |
262 | else | 263 | else |
263 | { | 264 | { |
264 | snprintf(buffer, buffer_len, "%s %s", str(LANG_ALBUMART), | 265 | snprintf(buffer, buffer_len, "%s %s", str(LANG_ALBUMART), |
265 | str(LANG_SET_BOOL_NO)); | 266 | str(LANG_SET_BOOL_NO)); |
266 | } | 267 | } |
268 | } break; | ||
267 | #endif | 269 | #endif |
268 | } | 270 | } |
269 | return buffer; | 271 | return buffer; |
@@ -348,17 +350,20 @@ static int info_speak_item(int selected_item, void * data) | |||
348 | break; | 350 | break; |
349 | #ifdef HAVE_ALBUMART | 351 | #ifdef HAVE_ALBUMART |
350 | case INFO_ALBUMART: /* album art dimenstions */ | 352 | case INFO_ALBUMART: /* album art dimenstions */ |
351 | if (gui_sync_wps_uses_albumart()) | 353 | { |
354 | int width = 0, height = 0; | ||
355 | if (wps_uses_albumart(&width, &height)) | ||
352 | { | 356 | { |
353 | talk_id(LANG_ALBUMART, false); | 357 | talk_id(LANG_ALBUMART, false); |
354 | talk_value(gui_wps[0].data->albumart_max_width, UNIT_PIXEL, true); | 358 | talk_value(width, UNIT_PIXEL, true); |
355 | talk_value(gui_wps[0].data->albumart_max_height, UNIT_PIXEL, true); | 359 | talk_value(height, UNIT_PIXEL, true); |
356 | } | 360 | } |
357 | else | 361 | else |
358 | { | 362 | { |
359 | talk_id(LANG_ALBUMART, false); | 363 | talk_id(LANG_ALBUMART, false); |
360 | talk_id(LANG_SET_BOOL_NO, true); | 364 | talk_id(LANG_SET_BOOL_NO, true); |
361 | } | 365 | } |
366 | } break; | ||
362 | #endif | 367 | #endif |
363 | } | 368 | } |
364 | return 0; | 369 | return 0; |
diff --git a/apps/playback.c b/apps/playback.c index 2a015da4c5..16f4766958 100644 --- a/apps/playback.c +++ b/apps/playback.c | |||
@@ -1872,9 +1872,10 @@ static void audio_finish_load_track(void) | |||
1872 | } | 1872 | } |
1873 | } | 1873 | } |
1874 | #ifdef HAVE_ALBUMART | 1874 | #ifdef HAVE_ALBUMART |
1875 | if (tracks[track_widx].aa_hid < 0 && gui_sync_wps_uses_albumart()) | 1875 | if (tracks[track_widx].aa_hid < 0) |
1876 | { | 1876 | { |
1877 | char aa_path[MAX_PATH]; | 1877 | char aa_path[MAX_PATH]; |
1878 | /* find_albumart will error out if the wps doesn't have AA */ | ||
1878 | if (find_albumart(track_id3, aa_path, sizeof(aa_path))) | 1879 | if (find_albumart(track_id3, aa_path, sizeof(aa_path))) |
1879 | { | 1880 | { |
1880 | tracks[track_widx].aa_hid = bufopen(aa_path, 0, TYPE_BITMAP); | 1881 | tracks[track_widx].aa_hid = bufopen(aa_path, 0, TYPE_BITMAP); |
diff --git a/apps/playback.h b/apps/playback.h index 3fcb454cc9..378d5effec 100644 --- a/apps/playback.h +++ b/apps/playback.h | |||
@@ -49,7 +49,7 @@ void codec_thread_do_callback(void (*fn)(void), | |||
49 | int audio_current_aa_hid(void); | 49 | int audio_current_aa_hid(void); |
50 | #endif | 50 | #endif |
51 | 51 | ||
52 | #if CONFIG_CODEC == SWCODEC /* This #ifdef is better here than gui/gwps.c */ | 52 | #if CONFIG_CODEC == SWCODEC /* This #ifdef is better here than gui/wps.c */ |
53 | extern void audio_next_dir(void); | 53 | extern void audio_next_dir(void); |
54 | extern void audio_prev_dir(void); | 54 | extern void audio_prev_dir(void); |
55 | #else | 55 | #else |
diff --git a/apps/recorder/albumart.c b/apps/recorder/albumart.c index f1315da71f..4507923144 100644 --- a/apps/recorder/albumart.c +++ b/apps/recorder/albumart.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include "dircache.h" | 28 | #include "dircache.h" |
29 | #include "misc.h" | 29 | #include "misc.h" |
30 | #include "settings.h" | 30 | #include "settings.h" |
31 | #include "wps.h" | ||
31 | 32 | ||
32 | /* Define LOGF_ENABLE to enable logf output in this file */ | 33 | /* Define LOGF_ENABLE to enable logf output in this file */ |
33 | /*#define LOGF_ENABLE*/ | 34 | /*#define LOGF_ENABLE*/ |
@@ -279,16 +280,16 @@ bool find_albumart(const struct mp3entry *id3, char *buf, int buflen) | |||
279 | return false; | 280 | return false; |
280 | 281 | ||
281 | char size_string[9]; | 282 | char size_string[9]; |
282 | struct wps_data *data = gui_wps[0].data; | 283 | int width = 0, height = 0; |
283 | 284 | ||
284 | if (!data) | 285 | if (!wps_uses_albumart(&width, &height)) |
285 | return false; | 286 | return false; |
286 | 287 | ||
287 | logf("Looking for album art for %s", id3->path); | 288 | logf("Looking for album art for %s", id3->path); |
288 | 289 | ||
289 | /* Write the size string, e.g. ".100x100". */ | 290 | /* Write the size string, e.g. ".100x100". */ |
290 | snprintf(size_string, sizeof(size_string), ".%dx%d", | 291 | snprintf(size_string, sizeof(size_string), ".%dx%d", |
291 | data->albumart_max_width, data->albumart_max_height); | 292 | width, height); |
292 | 293 | ||
293 | /* First we look for a bitmap of the right size */ | 294 | /* First we look for a bitmap of the right size */ |
294 | if (search_albumart_files(id3, size_string, buf, buflen)) | 295 | if (search_albumart_files(id3, size_string, buf, buflen)) |
@@ -372,9 +373,14 @@ void draw_album_art(struct gui_wps *gwps, int handle_id, bool clear) | |||
372 | void get_albumart_size(struct bitmap *bmp) | 373 | void get_albumart_size(struct bitmap *bmp) |
373 | { | 374 | { |
374 | /* FIXME: What should we do with albumart on remote? */ | 375 | /* FIXME: What should we do with albumart on remote? */ |
375 | struct wps_data *data = gui_wps[0].data; | 376 | int width, height; |
376 | 377 | ||
377 | bmp->width = data->albumart_max_width; | 378 | if (!wps_uses_albumart(&width, &height)) |
378 | bmp->height = data->albumart_max_height; | 379 | { |
380 | width = 0; height = 0; | ||
381 | } | ||
382 | |||
383 | bmp->width = width; | ||
384 | bmp->height = height; | ||
379 | } | 385 | } |
380 | #endif /* PLUGIN */ | 386 | #endif /* PLUGIN */ |
diff --git a/apps/settings.c b/apps/settings.c index 8835b95b12..423e6ed173 100644 --- a/apps/settings.c +++ b/apps/settings.c | |||
@@ -69,7 +69,7 @@ | |||
69 | #if CONFIG_TUNER | 69 | #if CONFIG_TUNER |
70 | #include "radio.h" | 70 | #include "radio.h" |
71 | #endif | 71 | #endif |
72 | #include "skin_engine/skin_engine.h" | 72 | #include "wps.h" |
73 | 73 | ||
74 | #if CONFIG_CODEC == MAS3507D | 74 | #if CONFIG_CODEC == MAS3507D |
75 | void dac_line_in(bool enable); | 75 | void dac_line_in(bool enable); |
@@ -848,15 +848,12 @@ void settings_apply(bool read_disk) | |||
848 | global_settings.wps_file[0] != 0xff ) { | 848 | global_settings.wps_file[0] != 0xff ) { |
849 | snprintf(buf, sizeof buf, WPS_DIR "/%s.wps", | 849 | snprintf(buf, sizeof buf, WPS_DIR "/%s.wps", |
850 | global_settings.wps_file); | 850 | global_settings.wps_file); |
851 | skin_data_load(gui_wps[0].data, &screens[0], buf, true); | 851 | wps_data_load(SCREEN_MAIN, buf, true); |
852 | } | 852 | } |
853 | else | 853 | else |
854 | { | 854 | { |
855 | wps_data_init(gui_wps[0].data); | 855 | wps_data_init(SCREEN_MAIN); |
856 | skin_data_load(gui_wps[0].data, &screens[0], NULL, true); | 856 | wps_data_load(SCREEN_MAIN, NULL, true); |
857 | #ifdef HAVE_REMOTE_LCD | ||
858 | gui_wps[0].data->remote_wps = false; | ||
859 | #endif | ||
860 | } | 857 | } |
861 | 858 | ||
862 | #if LCD_DEPTH > 1 | 859 | #if LCD_DEPTH > 1 |
@@ -878,13 +875,12 @@ void settings_apply(bool read_disk) | |||
878 | if ( global_settings.rwps_file[0]) { | 875 | if ( global_settings.rwps_file[0]) { |
879 | snprintf(buf, sizeof buf, WPS_DIR "/%s.rwps", | 876 | snprintf(buf, sizeof buf, WPS_DIR "/%s.rwps", |
880 | global_settings.rwps_file); | 877 | global_settings.rwps_file); |
881 | skin_data_load(gui_wps[1].data, &screens[1], buf, true); | 878 | wps_data_load(SCREEN_REMOTE, buf, true); |
882 | } | 879 | } |
883 | else | 880 | else |
884 | { | 881 | { |
885 | wps_data_init(gui_wps[1].data); | 882 | wps_data_init(SCREEN_REMOTE); |
886 | skin_data_load(gui_wps[1].data, &screens[1], NULL, true); | 883 | wps_data_load(SCREEN_REMOTE, NULL, true); |
887 | gui_wps[1].data->remote_wps = true; | ||
888 | } | 884 | } |
889 | #endif | 885 | #endif |
890 | if ( global_settings.lang_file[0]) { | 886 | if ( global_settings.lang_file[0]) { |