diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-06-01 13:56:34 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-06-01 13:56:34 +0000 |
commit | 5dca53eeb0e5ee17bfb5ff436655fa991d0786bd (patch) | |
tree | b2c73e16ae49c854c05651a1120f569db5102906 /apps/gui | |
parent | 995b71a51d3cfa37ebf5dd40d83bd6c0aed019d4 (diff) |
Even more touchscreen improvements.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17673 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui')
-rw-r--r-- | apps/gui/bitmap/list.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/apps/gui/bitmap/list.c b/apps/gui/bitmap/list.c index f1dbf188ab..dacf65adbd 100644 --- a/apps/gui/bitmap/list.c +++ b/apps/gui/bitmap/list.c @@ -278,7 +278,7 @@ void list_draw(struct screen *display, struct viewport *parent, #if defined(HAVE_TOUCHPAD) -static int prev_line=0; +static unsigned int prev_line=0; /* this needs to be fixed if we ever get more than 1 touchscreen on a target */ /* this also assumes the whole screen is used, which is a bad asusmption but fine untill customizable lists comes in... */ @@ -297,7 +297,7 @@ unsigned gui_synclist_do_touchpad(struct gui_synclist * gui_list, struct viewpor { if (button == BUTTON_REL) return ACTION_STD_MENU; - else if (button == BUTTON_REPEAT) + else if (button == (BUTTON_REPEAT|BUTTON_REL)) return ACTION_STD_CONTEXT; else return ACTION_NONE; @@ -355,13 +355,13 @@ unsigned gui_synclist_do_touchpad(struct gui_synclist * gui_list, struct viewpor return ACTION_REDRAW; } - if (button == BUTTON_REPEAT) + if (button == (BUTTON_REPEAT|BUTTON_REL)) return ACTION_STD_CONTEXT; else if(button == BUTTON_REL) { - if(prev_line == line) + if((signed)prev_line == line) { - prev_line = 0; + prev_line = -1; return ACTION_STD_OK; } else @@ -375,14 +375,10 @@ unsigned gui_synclist_do_touchpad(struct gui_synclist * gui_list, struct viewpor } /* title goes up one level */ else if (y > title_text[SCREEN_MAIN].y && draw_title(display, parent, gui_list) && button == BUTTON_REL) - { return ACTION_STD_CANCEL; - } /* title or statusbar is cancel */ else if (global_settings.statusbar && button == BUTTON_REL) - { return ACTION_STD_CANCEL; - } } return ACTION_NONE; } |