diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/action.c | 2 | ||||
-rw-r--r-- | apps/gui/list.c | 13 | ||||
-rwxr-xr-x | apps/keymaps/keymap-mr500.c | 6 |
3 files changed, 19 insertions, 2 deletions
diff --git a/apps/action.c b/apps/action.c index 989313f41c..7f445c8b9f 100644 --- a/apps/action.c +++ b/apps/action.c | |||
@@ -301,6 +301,6 @@ int action_get_touchpad_press(short *x, short *y) | |||
301 | return BUTTON_REPEAT; | 301 | return BUTTON_REPEAT; |
302 | if (short_press) | 302 | if (short_press) |
303 | return BUTTON_REL; | 303 | return BUTTON_REL; |
304 | return BUTTON_NONE; | 304 | return BUTTON_TOUCHPAD; |
305 | } | 305 | } |
306 | #endif | 306 | #endif |
diff --git a/apps/gui/list.c b/apps/gui/list.c index e7de12c4a0..6f61a61992 100644 --- a/apps/gui/list.c +++ b/apps/gui/list.c | |||
@@ -918,6 +918,8 @@ unsigned gui_synclist_do_touchpad(struct gui_synclist * lists) | |||
918 | short x,y; | 918 | short x,y; |
919 | unsigned button = action_get_touchpad_press(&x, &y); | 919 | unsigned button = action_get_touchpad_press(&x, &y); |
920 | int line; | 920 | int line; |
921 | if (button == BUTTON_NONE) | ||
922 | return ACTION_NONE; | ||
921 | if (x<SCROLLBAR_WIDTH) | 923 | if (x<SCROLLBAR_WIDTH) |
922 | { | 924 | { |
923 | /* top left corner is hopefully GO_TO_ROOT */ | 925 | /* top left corner is hopefully GO_TO_ROOT */ |
@@ -956,7 +958,16 @@ unsigned gui_synclist_do_touchpad(struct gui_synclist * lists) | |||
956 | else | 958 | else |
957 | { | 959 | { |
958 | if (button != BUTTON_REL && button != BUTTON_REPEAT) | 960 | if (button != BUTTON_REL && button != BUTTON_REPEAT) |
959 | return ACTION_NONE; | 961 | { |
962 | if (global_settings.statusbar) | ||
963 | y -= STATUSBAR_HEIGHT; | ||
964 | if (SHOW_LIST_TITLE) | ||
965 | y -= gui_list->display->char_height; | ||
966 | line = y / gui_list->display->char_height; | ||
967 | if (line != gui_list->selected_item - gui_list->start_item) | ||
968 | gui_synclist_select_item(lists, gui_list->start_item+line); | ||
969 | return ACTION_REDRAW; | ||
970 | } | ||
960 | /* title or statusbar is cancel */ | 971 | /* title or statusbar is cancel */ |
961 | if (global_settings.statusbar) | 972 | if (global_settings.statusbar) |
962 | { | 973 | { |
diff --git a/apps/keymaps/keymap-mr500.c b/apps/keymaps/keymap-mr500.c index b2444c5fad..b0d75c15bf 100755 --- a/apps/keymaps/keymap-mr500.c +++ b/apps/keymaps/keymap-mr500.c | |||
@@ -86,6 +86,12 @@ static const struct button_mapping button_context_listtree_scroll_without_combo[ | |||
86 | }; | 86 | }; |
87 | 87 | ||
88 | static const struct button_mapping button_context_settings[] = { | 88 | static const struct button_mapping button_context_settings[] = { |
89 | { ACTION_SETTINGS_INC, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
90 | { ACTION_SETTINGS_INCREPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
91 | { ACTION_SETTINGS_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
92 | { ACTION_SETTINGS_DECREPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
93 | { ACTION_STD_OK, BUTTON_RC_HEART, BUTTON_NONE }, | ||
94 | { ACTION_STD_CANCEL, BUTTON_RC_MODE, BUTTON_NONE }, | ||
89 | 95 | ||
90 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) | 96 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) |
91 | }; /* button_context_settings */ | 97 | }; /* button_context_settings */ |