From 701a593c5df9bbf88711781e1abdb09690076034 Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Mon, 2 Feb 2009 03:14:51 +0000 Subject: continuation of last nights statusbar cleanup. accept FS#9858 and FS#9859 make the rec and fm screens force the statusbar the correct way now which doesnt need extra status variables git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19904 a1c6a512-1295-4272-9138-f99709370657 --- apps/recorder/radio.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'apps/recorder/radio.c') diff --git a/apps/recorder/radio.c b/apps/recorder/radio.c index d01d24ccf2..8c8c56cb34 100644 --- a/apps/recorder/radio.c +++ b/apps/recorder/radio.c @@ -459,7 +459,6 @@ int radio_screen(void) bool update_screen = true; bool screen_freeze = false; bool keep_playing = false; - bool statusbar = global_settings.statusbar; bool talk = false; #ifdef FM_RECORD_DBLPRE int lastbutton = BUTTON_NONE; @@ -477,6 +476,7 @@ int radio_screen(void) int button_timeout = current_tick + (2*HZ); #endif struct viewport vp[NB_SCREENS]; + int oldbars = 0, fmbars = VP_SB_ALLSCREENS; #ifdef HAVE_BUTTONBAR struct gui_buttonbar buttonbar; gui_buttonbar_init(&buttonbar); @@ -487,8 +487,9 @@ int radio_screen(void) in_screen = true; /* always display status bar in radio screen for now */ - global_status.statusbar_forced = statusbar?0:1; - global_settings.statusbar = true; + FOR_NB_SCREENS(i) + fmbars |= VP_SB_IGNORE_SETTING(i); + oldbars = viewportmanager_set_statusbar(fmbars); FOR_NB_SCREENS(i) { viewport_set_defaults(&vp[i], i); @@ -744,8 +745,10 @@ int radio_screen(void) break; case ACTION_FM_MENU: + viewportmanager_set_statusbar(oldbars); radio_menu(); curr_preset = find_preset(curr_freq); + viewportmanager_set_statusbar(fmbars); FOR_NB_SCREENS(i) { screens[i].set_viewport(&vp[i]); @@ -777,7 +780,9 @@ int radio_screen(void) break; } + viewportmanager_set_statusbar(oldbars); handle_radio_presets(); + viewportmanager_set_statusbar(fmbars); FOR_NB_SCREENS(i) { screens[i].set_viewport(&vp[i]); @@ -1073,9 +1078,7 @@ int radio_screen(void) cpu_idle_mode(false); #endif - /* restore status bar settings */ - global_settings.statusbar = statusbar; - global_status.statusbar_forced = 0; + viewportmanager_set_statusbar(oldbars); in_screen = false; #if CONFIG_CODEC != SWCODEC return have_recorded; -- cgit v1.2.3