diff options
Diffstat (limited to 'apps/gui/wps.c')
-rw-r--r-- | apps/gui/wps.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/apps/gui/wps.c b/apps/gui/wps.c index 2587542b00..5b973a2199 100644 --- a/apps/gui/wps.c +++ b/apps/gui/wps.c | |||
@@ -53,6 +53,7 @@ | |||
53 | #include "root_menu.h" | 53 | #include "root_menu.h" |
54 | #include "backdrop.h" | 54 | #include "backdrop.h" |
55 | #include "quickscreen.h" | 55 | #include "quickscreen.h" |
56 | #include "shortcuts.h" | ||
56 | #include "pitchscreen.h" | 57 | #include "pitchscreen.h" |
57 | #include "appevents.h" | 58 | #include "appevents.h" |
58 | #include "viewport.h" | 59 | #include "viewport.h" |
@@ -839,15 +840,24 @@ long gui_wps_show(void) | |||
839 | case ACTION_WPS_QUICKSCREEN: | 840 | case ACTION_WPS_QUICKSCREEN: |
840 | { | 841 | { |
841 | gwps_leave_wps(); | 842 | gwps_leave_wps(); |
842 | if (global_settings.shortcuts_replaces_qs) | 843 | bool enter_shortcuts_menu = global_settings.shortcuts_replaces_qs; |
844 | if (!enter_shortcuts_menu) | ||
843 | { | 845 | { |
844 | global_status.last_screen = GO_TO_SHORTCUTMENU; | ||
845 | int ret = quick_screen_quick(button); | 846 | int ret = quick_screen_quick(button); |
847 | if (ret == QUICKSCREEN_IN_USB) | ||
848 | return GO_TO_ROOT; | ||
849 | else if (ret == QUICKSCREEN_GOTO_SHORTCUTS_MENU) | ||
850 | enter_shortcuts_menu = true; | ||
851 | else | ||
852 | restore = true; | ||
853 | } | ||
854 | |||
855 | if (enter_shortcuts_menu) | ||
856 | { | ||
857 | global_status.last_screen = GO_TO_SHORTCUTMENU; | ||
858 | int ret = do_shortcut_menu(NULL); | ||
846 | return (ret == GO_TO_PREVIOUS ? GO_TO_WPS : ret); | 859 | return (ret == GO_TO_PREVIOUS ? GO_TO_WPS : ret); |
847 | } | 860 | } |
848 | else if (quick_screen_quick(button) > 0) | ||
849 | return GO_TO_ROOT; | ||
850 | restore = true; | ||
851 | } | 861 | } |
852 | break; | 862 | break; |
853 | #endif /* HAVE_QUICKSCREEN */ | 863 | #endif /* HAVE_QUICKSCREEN */ |