Merge pull request #14044 from sonninnos/overlay-pointer

Block pointer input when overlay is pressed
This commit is contained in:
LibretroAdmin 2022-06-16 15:42:57 +01:00 committed by GitHub
commit 50f65a893f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 4 deletions

View File

@ -2052,10 +2052,14 @@ void input_poll_overlay(
break;
}
if (input_overlay_show_inputs != OVERLAY_SHOW_INPUT_NONE)
button_pressed = input_overlay_add_inputs(ol,
(input_overlay_show_inputs == OVERLAY_SHOW_INPUT_TOUCHED),
input_overlay_show_inputs_port);
button_pressed = input_overlay_add_inputs(ol,
(input_overlay_show_inputs == OVERLAY_SHOW_INPUT_TOUCHED),
input_overlay_show_inputs_port);
input_st->block_pointer_input = button_pressed;
if (input_overlay_show_inputs == OVERLAY_SHOW_INPUT_NONE)
button_pressed = false;
if (button_pressed || polled)
input_overlay_post_poll(overlay_visibility, ol,
@ -3977,6 +3981,9 @@ int16_t input_state_device(
case RETRO_DEVICE_LIGHTGUN:
case RETRO_DEVICE_POINTER:
if (input_st->block_pointer_input)
break;
if (id < RARCH_FIRST_META_KEY)
{
bool bind_valid = input_st->libretro_input_binds[port]

View File

@ -436,6 +436,7 @@ typedef struct
bool block_hotkey;
bool block_libretro_input;
bool block_pointer_input;
bool grab_mouse_state;
bool analog_requested[MAX_USERS];
bool keyboard_mapping_blocked;