Index: apps/gui/list.c =================================================================== --- apps/gui/list.c (revision 17979) +++ apps/gui/list.c (working copy) @@ -249,6 +249,7 @@ enum screen_type screen) { int nb_lines; + gui_list->start_item[screen] = gui_list->selected_item; int difference = gui_list->selected_item - gui_list->start_item[screen]; struct viewport vp = *gui_list->parent[screen]; #ifdef HAVE_LCD_BITMAP @@ -260,7 +261,7 @@ /* edge case,, selected last item */ if (gui_list->selected_item == gui_list->nb_items -1) { - gui_list->start_item[screen] = MAX(0, gui_list->nb_items - nb_lines); + gui_list->start_item[screen] = MAX(0, gui_list->nb_items - nb_lines + 1); } /* selected first item */ else if (gui_list->selected_item == 0)