summaryrefslogtreecommitdiff
path: root/apps/menu.c
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2003-11-20 01:51:15 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2003-11-20 01:51:15 +0000
commitf1659a3957c184f2456eea0fb22ce8dc74d078fd (patch)
treed863380467a940d7c053524dbd18f5e6264241a0 /apps/menu.c
parentba2c197f2fb419d25f972538b075ee02a4feea1b (diff)
Wrapping backwards in menus didn't work well when using a large font
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4055 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/menu.c')
-rw-r--r--apps/menu.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/apps/menu.c b/apps/menu.c
index b7bc542bb0..c7e3381985 100644
--- a/apps/menu.c
+++ b/apps/menu.c
@@ -184,6 +184,7 @@ static void put_cursor(int m, int target)
#ifdef HAVE_LCD_BITMAP
int fw, fh;
int menu_lines;
+ lcd_setfont(FONT_UI);
lcd_getstringsize("A", &fw, &fh);
if (global_settings.statusbar)
menu_lines = (LCD_HEIGHT - STATUSBAR_HEIGHT) / fh;
@@ -245,6 +246,18 @@ void menu_exit(int m)
int menu_show(int m)
{
bool exit = false;
+#ifdef HAVE_LCD_BITMAP
+ int fw, fh;
+ int menu_lines;
+ lcd_setfont(FONT_UI);
+ lcd_getstringsize("A", &fw, &fh);
+ if (global_settings.statusbar)
+ menu_lines = (LCD_HEIGHT - STATUSBAR_HEIGHT) / fh;
+ else
+ menu_lines = LCD_HEIGHT/fh;
+#else
+ int menu_lines = MENU_LINES;
+#endif
menu_draw(m);
@@ -264,7 +277,7 @@ int menu_show(int m)
else {
/* move to bottom */
#ifdef HAVE_RECORDER_KEYPAD
- menus[m].top = menus[m].itemcount-9;
+ menus[m].top = menus[m].itemcount-(menu_lines+1);
#else
menus[m].top = menus[m].itemcount-3;
#endif