From: mcuelenaere Date: Thu, 24 Jun 2010 14:32:25 +0000 (+0000) Subject: I somehow messed up the previous commit, undo the unrelated changes. X-Git-Url: https://repo.or.cz/w/kugel-rb.git/commitdiff_plain/f1b6240619b9cc7ade4752a61ba344f124459b58 I somehow messed up the previous commit, undo the unrelated changes. Also, r26922 wasn't the culprit but r27004. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27108 a1c6a512-1295-4272-9138-f99709370657 --- diff --git a/apps/gui/bitmap/list.c b/apps/gui/bitmap/list.c index 09c89618f..87d710795 100644 --- a/apps/gui/bitmap/list.c +++ b/apps/gui/bitmap/list.c @@ -347,19 +347,26 @@ unsigned gui_synclist_do_touchscreen(struct gui_synclist * gui_list) short x, y; const int button = action_get_touchscreen_press(&x, &y); int line; - const struct screen *display = &screens[SCREEN_MAIN]; - const int screen = display->screen_type; + const int screen = SCREEN_MAIN; const int list_start_item = gui_list->start_item[screen]; const struct viewport *list_text_vp = &list_text[screen]; + int list_width = list_text_vp->width; + + if (global_settings.scrollbar == SCROLLBAR_RIGHT) + list_width += SCROLLBAR_WIDTH; if (button == BUTTON_NONE) return ACTION_NONE; - if (global_settings.scrollbar == SCROLLBAR_RIGHT && - x > list_text_vp->x + list_text_vp->width + SCROLLBAR_WIDTH) - /* wider than the list's viewport, ignore it */ + if (x > list_text_vp->x + list_width) return ACTION_NONE; + /* make sure it is inside the UI viewport */ + if (list_display_title(gui_list, screen) && + viewport_point_within_vp(&title_text[screen], x, y) && + button == BUTTON_REL) + return ACTION_STD_CANCEL; + if (x < list_text_vp->x) { /* Top left corner is GO_TO_ROOT */ @@ -463,9 +470,6 @@ unsigned gui_synclist_do_touchscreen(struct gui_synclist * gui_list) else return ACTION_NONE; } - /* Everything above the items is cancel */ - else if (y < list_text_vp->y && button == BUTTON_REL) - return ACTION_STD_CANCEL; } return ACTION_NONE; }