summaryrefslogtreecommitdiff
path: root/apps/gui
diff options
context:
space:
mode:
Diffstat (limited to 'apps/gui')
-rw-r--r--apps/gui/backdrop.c13
-rw-r--r--apps/gui/backdrop.h4
-rw-r--r--apps/gui/viewport.c6
-rw-r--r--apps/gui/wps.c3
4 files changed, 24 insertions, 2 deletions
diff --git a/apps/gui/backdrop.c b/apps/gui/backdrop.c
index c220d06493..7e56dcb7db 100644
--- a/apps/gui/backdrop.c
+++ b/apps/gui/backdrop.c
@@ -124,6 +124,12 @@ void backdrop_show(enum backdrop_type bdrop)
124 show_skin_backdrop(); 124 show_skin_backdrop();
125} 125}
126 126
127void backdrop_hide(void)
128{
129 lcd_set_backdrop(NULL);
130}
131
132
127 133
128#if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1 134#if defined(HAVE_REMOTE_LCD) && LCD_REMOTE_DEPTH > 1
129 135
@@ -201,4 +207,11 @@ void remote_backdrop_unload(enum backdrop_type bdrop)
201} 207}
202 208
203 209
210void remote_backdrop_hide(void)
211{
212 lcd_remote_set_backdrop(NULL);
213}
214
204#endif 215#endif
216
217
diff --git a/apps/gui/backdrop.h b/apps/gui/backdrop.h
index b37071b5d4..4083464cee 100644
--- a/apps/gui/backdrop.h
+++ b/apps/gui/backdrop.h
@@ -35,6 +35,7 @@ enum backdrop_type {
35bool backdrop_load(enum backdrop_type bdrop, const char*); 35bool backdrop_load(enum backdrop_type bdrop, const char*);
36void backdrop_unload(enum backdrop_type bdrop); 36void backdrop_unload(enum backdrop_type bdrop);
37void backdrop_show(enum backdrop_type bdrop); 37void backdrop_show(enum backdrop_type bdrop);
38void backdrop_hide(void);
38 39
39#else /* LCD_DEPTH <= 1 || __PCTOOL__ */ 40#else /* LCD_DEPTH <= 1 || __PCTOOL__ */
40 41
@@ -52,6 +53,7 @@ static inline void backdrop_show(enum backdrop_type bdrop)
52 (void)bdrop; 53 (void)bdrop;
53} 54}
54 55
56static inline void backdrop_hide(void) {}
55#endif 57#endif
56 58
57#if defined(HAVE_REMOTE_LCD) 59#if defined(HAVE_REMOTE_LCD)
@@ -60,6 +62,7 @@ static inline void backdrop_show(enum backdrop_type bdrop)
60bool remote_backdrop_load(enum backdrop_type bdrop,const char* filename); 62bool remote_backdrop_load(enum backdrop_type bdrop,const char* filename);
61void remote_backdrop_unload(enum backdrop_type bdrop); 63void remote_backdrop_unload(enum backdrop_type bdrop);
62void remote_backdrop_show(enum backdrop_type bdrop); 64void remote_backdrop_show(enum backdrop_type bdrop);
65void remote_backdrop_hide(void);
63#else 66#else
64static inline 67static inline
65bool remote_backdrop_load(enum backdrop_type bdrop,const char* filename) 68bool remote_backdrop_load(enum backdrop_type bdrop,const char* filename)
@@ -76,6 +79,7 @@ static inline void remote_backdrop_show(enum backdrop_type bdrop)
76{ 79{
77 (void)bdrop; 80 (void)bdrop;
78} 81}
82static inline void remote_backdrop_hide(void) {}
79#endif 83#endif
80#endif 84#endif
81 85
diff --git a/apps/gui/viewport.c b/apps/gui/viewport.c
index 22eccc161f..3c5249cff9 100644
--- a/apps/gui/viewport.c
+++ b/apps/gui/viewport.c
@@ -89,6 +89,8 @@ static void toggle_theme(enum screen_type screen, bool force)
89 add_event(PLAYBACK_EVENT_NEXTTRACKID3_AVAILABLE, false, 89 add_event(PLAYBACK_EVENT_NEXTTRACKID3_AVAILABLE, false,
90 do_sbs_update_callback); 90 do_sbs_update_callback);
91 91
92 screens[screen].backdrop_show(BACKDROP_MAIN);
93
92 /* remove the left overs from the previous screen. 94 /* remove the left overs from the previous screen.
93 * could cause a tiny flicker. Redo your screen code if that happens */ 95 * could cause a tiny flicker. Redo your screen code if that happens */
94 if (!was_enabled[screen] || force) 96 if (!was_enabled[screen] || force)
@@ -142,7 +144,11 @@ static void toggle_theme(enum screen_type screen, bool force)
142 else 144 else
143 { 145 {
144 FOR_NB_SCREENS(i) 146 FOR_NB_SCREENS(i)
147 {
148 screens[i].backdrop_hide();
145 screens[i].stop_scroll(); 149 screens[i].stop_scroll();
150 }
151
146#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP) 152#if defined(HAVE_LCD_ENABLE) || defined(HAVE_LCD_SLEEP)
147 remove_event(LCD_EVENT_ACTIVATION, do_sbs_update_callback); 153 remove_event(LCD_EVENT_ACTIVATION, do_sbs_update_callback);
148#endif 154#endif
diff --git a/apps/gui/wps.c b/apps/gui/wps.c
index 14fb848ebe..a5394981ae 100644
--- a/apps/gui/wps.c
+++ b/apps/gui/wps.c
@@ -611,6 +611,7 @@ static void gwps_enter_wps(void)
611 vp->bg_pattern = display->get_background(); 611 vp->bg_pattern = display->get_background();
612 } 612 }
613#endif 613#endif
614 display->backdrop_show(BACKDROP_SKIN_WPS);
614 skin_update(gwps, WPS_REFRESH_ALL); 615 skin_update(gwps, WPS_REFRESH_ALL);
615 } 616 }
616} 617}
@@ -1180,8 +1181,6 @@ long gui_wps_show(void)
1180 /* we remove the update delay since it's not very usable in the wps, 1181 /* we remove the update delay since it's not very usable in the wps,
1181 * e.g. during volume changing or ffwd/rewind */ 1182 * e.g. during volume changing or ffwd/rewind */
1182 sb_skin_set_update_delay(0); 1183 sb_skin_set_update_delay(0);
1183 FOR_NB_SCREENS(i)
1184 gui_wps[i].display->backdrop_show(BACKDROP_SKIN_WPS);
1185 wps_sync_data.do_full_update = update = false; 1184 wps_sync_data.do_full_update = update = false;
1186 gwps_enter_wps(); 1185 gwps_enter_wps();
1187 } 1186 }