summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/settings.c77
1 files changed, 36 insertions, 41 deletions
diff --git a/apps/settings.c b/apps/settings.c
index 0bd073e66d..568e305655 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -748,57 +748,52 @@ void settings_apply_skins(void)
748 char buf[MAX_PATH]; 748 char buf[MAX_PATH];
749 /* re-initialize the skin buffer before we start reloading skins */ 749 /* re-initialize the skin buffer before we start reloading skins */
750 skin_buffer_init(); 750 skin_buffer_init();
751 int i;
751#ifdef HAVE_LCD_BITMAP 752#ifdef HAVE_LCD_BITMAP
752 skin_backdrop_init(); 753 skin_backdrop_init();
753 skin_font_init(); 754 skin_font_init();
754 if ( global_settings.sbs_file[0] && 755 FOR_NB_SCREENS(i)
755 global_settings.sbs_file[0] != 0xff )
756 {
757 snprintf(buf, sizeof buf, SBS_DIR "/%s.sbs",
758 global_settings.sbs_file);
759 sb_skin_data_load(SCREEN_MAIN, buf, true);
760 }
761 else
762 { 756 {
763 sb_skin_data_load(SCREEN_MAIN, NULL, true); 757 const char* setting;
764 } 758#ifdef HAVE_REMOTE_LCD
759 if (i == SCREEN_REMOTE)
760 setting = global_settings.rsbs_file;
761 else
765#endif 762#endif
766 if ( global_settings.wps_file[0] && 763 setting = global_settings.sbs_file;
767 global_settings.wps_file[0] != 0xff ) 764 if (setting[0] && setting[0] != '-')
768 { 765 {
769 snprintf(buf, sizeof buf, WPS_DIR "/%s.wps", 766 snprintf(buf, sizeof buf, SBS_DIR "/%s.%ssbs", setting,
770 global_settings.wps_file); 767 i == SCREEN_MAIN? "" : "r");
771 wps_data_load(SCREEN_MAIN, buf, true); 768 sb_skin_data_load(i, buf, true);
772 } 769 }
773 else 770 else
774 { 771 {
775 wps_data_load(SCREEN_MAIN, NULL, true); 772 sb_skin_data_load(i, NULL, true);
776 } 773 }
777#if defined(HAVE_REMOTE_LCD) && (NB_SCREENS > 1)
778 if ( global_settings.rsbs_file[0] &&
779 global_settings.rsbs_file[0] != 0xff ) {
780 snprintf(buf, sizeof buf, SBS_DIR "/%s.rsbs",
781 global_settings.rsbs_file);
782 sb_skin_data_load(SCREEN_REMOTE, buf, true);
783 }
784 else
785 {
786 sb_skin_data_load(SCREEN_REMOTE, NULL, true);
787 }
788 if ( global_settings.rwps_file[0])
789 {
790 snprintf(buf, sizeof buf, WPS_DIR "/%s.rwps",
791 global_settings.rwps_file);
792 wps_data_load(SCREEN_REMOTE, buf, true);
793 } 774 }
794 else 775#endif
776 FOR_NB_SCREENS(i)
795 { 777 {
796 wps_data_load(SCREEN_REMOTE, NULL, true); 778 const char* setting = global_settings.wps_file;
797 } 779#ifdef HAVE_REMOTE_LCD
780 if (i == SCREEN_REMOTE)
781 setting = global_settings.rsbs_file;
798#endif 782#endif
783 if (setting[0] && setting[0] != '-')
784 {
785 snprintf(buf, sizeof buf, WPS_DIR "/%s.%swps", setting,
786 i == SCREEN_MAIN? "" : "r");
787 wps_data_load(SCREEN_MAIN, buf, true);
788 }
789 else
790 {
791 wps_data_load(SCREEN_MAIN, NULL, true);
792 }
793 }
794
799 viewportmanager_theme_changed(THEME_STATUSBAR); 795 viewportmanager_theme_changed(THEME_STATUSBAR);
800#if LCD_DEPTH > 1 || defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 796#if LCD_DEPTH > 1 || defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1
801 int i;
802 FOR_NB_SCREENS(i) 797 FOR_NB_SCREENS(i)
803 screens[i].backdrop_show(sb_get_backdrop(i)); 798 screens[i].backdrop_show(sb_get_backdrop(i));
804#endif 799#endif