From 2f25db03babb0a32fa5dd3b67385318f1b4361c9 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Wed, 4 Mar 2020 19:51:36 +0100 Subject: [PATCH] (Menu) Fix bug - if you were in XMB and you would set menu driver to RGUI, you could no longer go to the left or right tab --- menu/cbs/menu_cbs_left.c | 12 +++++++----- menu/cbs/menu_cbs_right.c | 10 ++++++---- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/menu/cbs/menu_cbs_left.c b/menu/cbs/menu_cbs_left.c index a54f31a1bd..f579e5726d 100644 --- a/menu/cbs/menu_cbs_left.c +++ b/menu/cbs/menu_cbs_left.c @@ -229,8 +229,10 @@ static int action_left_mainmenu(unsigned type, const char *label, bool wraparound) { menu_ctx_list_t list_info; - unsigned push_list = 0; - settings_t *settings = config_get_ptr(); + unsigned push_list = 0; + settings_t *settings = config_get_ptr(); + bool menu_nav_wraparound_enable = settings->bools.menu_navigation_wraparound_enable; + const char *menu_ident = menu_driver_ident(); menu_driver_list_get_selection(&list_info); @@ -241,11 +243,11 @@ static int action_left_mainmenu(unsigned type, const char *label, /* List switching functionality does not * apply to RGUI or MaterialUI */ if ((list_info.size == 1) && - !string_is_equal(settings->arrays.menu_driver, "rgui") && - !string_is_equal(settings->arrays.menu_driver, "glui")) + !string_is_equal(menu_ident, "rgui") && + !string_is_equal(menu_ident, "glui")) { if ((list_info.selection != 0) - || settings->bools.menu_navigation_wraparound_enable) + || menu_nav_wraparound_enable) push_list = 1; } else diff --git a/menu/cbs/menu_cbs_right.c b/menu/cbs/menu_cbs_right.c index 4904067c51..0348f76be0 100644 --- a/menu/cbs/menu_cbs_right.c +++ b/menu/cbs/menu_cbs_right.c @@ -259,7 +259,9 @@ static int action_right_mainmenu(unsigned type, const char *label, bool wraparound) { menu_ctx_list_t list_info; - settings_t *settings = config_get_ptr(); + settings_t *settings = config_get_ptr(); + bool menu_nav_wraparound_enable = settings->bools.menu_navigation_wraparound_enable; + const char *menu_ident = menu_driver_ident(); menu_driver_list_get_selection(&list_info); @@ -270,8 +272,8 @@ static int action_right_mainmenu(unsigned type, const char *label, /* Tab switching functionality does not * apply to RGUI or MaterialUI */ if ((list_info.size == 1) && - !string_is_equal(settings->arrays.menu_driver, "rgui") && - !string_is_equal(settings->arrays.menu_driver, "glui")) + !string_is_equal(menu_ident, "rgui") && + !string_is_equal(menu_ident, "glui")) { menu_ctx_list_t list_horiz_info; menu_ctx_list_t list_tabs_info; @@ -283,7 +285,7 @@ static int action_right_mainmenu(unsigned type, const char *label, menu_driver_list_get_size(&list_tabs_info); if ((list_info.selection != (list_horiz_info.size + list_tabs_info.size)) - || settings->bools.menu_navigation_wraparound_enable) + || menu_nav_wraparound_enable) return action_right_goto_tab(); } else