diff options
Diffstat (limited to 'apps/menu.c')
-rw-r--r-- | apps/menu.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/apps/menu.c b/apps/menu.c index 670a235202..b640905c0f 100644 --- a/apps/menu.c +++ b/apps/menu.c | |||
@@ -61,6 +61,12 @@ | |||
61 | #include "list.h" | 61 | #include "list.h" |
62 | #include "buttonbar.h" | 62 | #include "buttonbar.h" |
63 | 63 | ||
64 | /* hotkey settings */ | ||
65 | #ifdef HAVE_HOTKEY | ||
66 | const struct menu_item_ex *selected_menu_item; | ||
67 | bool hotkey_settable_menu = false; | ||
68 | #endif | ||
69 | |||
64 | #define MAX_MENUS 8 | 70 | #define MAX_MENUS 8 |
65 | /* used to allow for dynamic menus */ | 71 | /* used to allow for dynamic menus */ |
66 | #define MAX_MENU_SUBITEMS 64 | 72 | #define MAX_MENU_SUBITEMS 64 |
@@ -426,6 +432,17 @@ int do_menu(const struct menu_item_ex *start_menu, int *start_selected, | |||
426 | done = true; | 432 | done = true; |
427 | } | 433 | } |
428 | #endif | 434 | #endif |
435 | #ifdef HAVE_HOTKEY | ||
436 | else if (hotkey_settable_menu && | ||
437 | ((action == ACTION_WPS_HOTKEY) || | ||
438 | (action == ACTION_TREE_HOTKEY))) | ||
439 | { | ||
440 | ret = MENU_SELECTED_HOTKEY; | ||
441 | done = true; | ||
442 | selected = get_menu_selection(gui_synclist_get_sel_pos(&lists),menu); | ||
443 | selected_menu_item = menu->submenus[selected]; | ||
444 | } | ||
445 | #endif | ||
429 | else if (action == ACTION_TREE_WPS) | 446 | else if (action == ACTION_TREE_WPS) |
430 | { | 447 | { |
431 | ret = GO_TO_PREVIOUS_MUSIC; | 448 | ret = GO_TO_PREVIOUS_MUSIC; |