diff options
| author | Jonathan Gordon <rockbox@jdgordon.info> | 2008-12-31 05:59:26 +0000 |
|---|---|---|
| committer | Jonathan Gordon <rockbox@jdgordon.info> | 2008-12-31 05:59:26 +0000 |
| commit | e385ee18ce501e26189d5a2a68d092104720df30 (patch) | |
| tree | 5219051887835d9750d80f71d9849ceb3aa65d82 /apps/main.c | |
| parent | 54919ae9176bd9cbffc8412f0c831f471b8ac4d5 (diff) | |
| download | rockbox-e385ee18ce501e26189d5a2a68d092104720df30.zip rockbox-e385ee18ce501e26189d5a2a68d092104720df30.tar.gz rockbox-e385ee18ce501e26189d5a2a68d092104720df30.tar.bz2 rockbox-e385ee18ce501e26189d5a2a68d092104720df30.tar.xz | |
Decouple the statusbar drawing from the rest of the screen drawing. it is not drawn roughly 4x per second automatically.
viewport_Set_defaults() will setup the given viewport with the correct "full screen" dimensions (so start at 0,0 if statusbars are disabled or 0,8 if they are enabled.)
All screens should keep the statusbar enabled, but if you really want to ignore the user setting you can disbaled it with viewportmanager_set_statusbar(false).
This commit also includes some menu/list viewport cleanups from kugel in FS#9603
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19622 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/main.c')
| -rw-r--r-- | apps/main.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/apps/main.c b/apps/main.c index 45e6c77..c62ee08 100644 --- a/apps/main.c +++ b/apps/main.c @@ -121,6 +121,16 @@ const char appsversion[]=APPSVERSION; static void init(void); +void fourhertz_tick_task(void) +{ + static long last_fire = 0; + if (TIME_AFTER(current_tick, last_fire+HZ/4)) + { + queue_post(&button_queue, SYS_FOURHERTZ, 0); + last_fire = current_tick; + } +} + #ifdef SIMULATOR void app_main(void) #else @@ -138,6 +148,10 @@ static void app_main(void) #ifdef HAVE_TOUCHSCREEN touchscreen_set_mode(TOUCHSCREEN_BUTTON); #endif + tick_add_task(fourhertz_tick_task); + viewportmanager_set_statusbar(true); + add_event(GUI_EVENT_STATUSBAR_TOGGLE, false, + viewportmanager_statusbar_changed); root_menu(); } |