summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2007-05-29 12:16:31 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2007-05-29 12:16:31 +0000
commit195ac1229639353a34aa62ee93fcc69e9ef885ab (patch)
treea8c6a21343bf2e6c1c83ad7d551038933c1c2c1b /apps
parentb2ecf1bc83565602af133a4ab59e98e7813548b3 (diff)
downloadrockbox-195ac1229639353a34aa62ee93fcc69e9ef885ab.tar.gz
rockbox-195ac1229639353a34aa62ee93fcc69e9ef885ab.zip
Fix FS#7230 - the second line in a multi-line item could be the selected item
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13512 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/list.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/apps/gui/list.c b/apps/gui/list.c
index 466ab2904b..9b4211cd48 100644
--- a/apps/gui/list.c
+++ b/apps/gui/list.c
@@ -504,9 +504,16 @@ static void gui_list_select_at_offset(struct gui_list * gui_list, int offset)
504 int nb_lines = gui_list->display->nb_lines; 504 int nb_lines = gui_list->display->nb_lines;
505 if (SHOW_LIST_TITLE) 505 if (SHOW_LIST_TITLE)
506 nb_lines--; 506 nb_lines--;
507 offset *= gui_list->selected_size; 507
508 gui_list->selected_item += offset;
509 508
509 if (gui_list->selected_size > 1)
510 {
511 offset *= gui_list->selected_size;
512 /* always select the first item of multi-line lists */
513 offset -= offset%gui_list->selected_size;
514 }
515 gui_list->selected_item += offset;
516
510 if (offset < 0) /* moving up the list */ 517 if (offset < 0) /* moving up the list */
511 { 518 {
512 if (gui_list->selected_item < 0) 519 if (gui_list->selected_item < 0)