Call button combo toggle for quick menu toggle from runloop_check_state
This commit is contained in:
parent
3e00c632bd
commit
4d4b00f877
|
@ -608,7 +608,7 @@ static INLINE bool input_menu_keys_pressed_internal(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool input_driver_toggle_button_combo(
|
bool input_driver_toggle_button_combo(
|
||||||
unsigned mode, uint64_t input)
|
unsigned mode, uint64_t input)
|
||||||
{
|
{
|
||||||
switch (mode)
|
switch (mode)
|
||||||
|
@ -728,20 +728,6 @@ uint64_t input_menu_keys_pressed(
|
||||||
input_driver_block_hotkey = true;
|
input_driver_block_hotkey = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_MENU
|
|
||||||
{
|
|
||||||
const struct retro_keybind *mtkey = &input_config_binds[0][RARCH_MENU_TOGGLE];
|
|
||||||
if ( ((settings->uints.input_menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) &&
|
|
||||||
input_driver_toggle_button_combo(
|
|
||||||
settings->uints.input_menu_toggle_gamepad_combo, old_input))
|
|
||||||
|| input_menu_keys_pressed_internal(
|
|
||||||
binds, settings, joypad_info, RARCH_MENU_TOGGLE, max_users,
|
|
||||||
mtkey->valid,
|
|
||||||
settings->bools.input_all_users_control_menu))
|
|
||||||
ret |= (UINT64_C(1) << RARCH_MENU_TOGGLE);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
for (i = 0; i < RARCH_BIND_LIST_END; i++)
|
for (i = 0; i < RARCH_BIND_LIST_END; i++)
|
||||||
{
|
{
|
||||||
const struct retro_keybind *mtkey = &input_config_binds[0][i];
|
const struct retro_keybind *mtkey = &input_config_binds[0][i];
|
||||||
|
@ -956,15 +942,6 @@ uint64_t input_keys_pressed(
|
||||||
input_driver_block_hotkey = false;
|
input_driver_block_hotkey = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_MENU
|
|
||||||
if (
|
|
||||||
((settings->uints.input_menu_toggle_gamepad_combo != INPUT_TOGGLE_NONE) &&
|
|
||||||
input_driver_toggle_button_combo(
|
|
||||||
settings->uints.input_menu_toggle_gamepad_combo, old_input))
|
|
||||||
|| input_keys_pressed_internal(settings, joypad_info, RARCH_MENU_TOGGLE, binds))
|
|
||||||
ret |= (UINT64_C(1) << RARCH_MENU_TOGGLE);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
for (i = 0; i < RARCH_BIND_LIST_END; i++)
|
for (i = 0; i < RARCH_BIND_LIST_END; i++)
|
||||||
{
|
{
|
||||||
if ( (i != RARCH_MENU_TOGGLE) &&
|
if ( (i != RARCH_MENU_TOGGLE) &&
|
||||||
|
|
|
@ -343,6 +343,9 @@ bool input_driver_grab_mouse(void);
|
||||||
|
|
||||||
bool input_driver_ungrab_mouse(void);
|
bool input_driver_ungrab_mouse(void);
|
||||||
|
|
||||||
|
bool input_driver_toggle_button_combo(
|
||||||
|
unsigned mode, uint64_t input);
|
||||||
|
|
||||||
float *input_driver_get_float(enum input_action action);
|
float *input_driver_get_float(enum input_action action);
|
||||||
|
|
||||||
unsigned *input_driver_get_uint(enum input_action action);
|
unsigned *input_driver_get_uint(enum input_action action);
|
||||||
|
|
|
@ -2420,8 +2420,11 @@ static enum runloop_state runloop_check_state(
|
||||||
/* Check menu toggle */
|
/* Check menu toggle */
|
||||||
{
|
{
|
||||||
static bool old_pressed = false;
|
static bool old_pressed = false;
|
||||||
|
unsigned mode = settings->uints.input_menu_toggle_gamepad_combo;
|
||||||
bool pressed = runloop_cmd_press(
|
bool pressed = runloop_cmd_press(
|
||||||
current_input, RARCH_MENU_TOGGLE);
|
current_input, RARCH_MENU_TOGGLE) ||
|
||||||
|
((mode != INPUT_TOGGLE_NONE) &&
|
||||||
|
input_driver_toggle_button_combo(mode, current_input));
|
||||||
|
|
||||||
if (menu_event_kb_is_set(RETROK_F1) == 1)
|
if (menu_event_kb_is_set(RETROK_F1) == 1)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue