feat: overhaul controller menu accessibility
This commit is contained in:
parent
a7837c3711
commit
4f9c85989b
46 changed files with 4091 additions and 396 deletions
|
|
@ -186,12 +186,16 @@ func _configure_focus() -> void:
|
|||
)
|
||||
_confirm_button.focus_neighbor_left = confirm_to_cancel
|
||||
_confirm_button.focus_neighbor_right = confirm_to_cancel
|
||||
_confirm_button.focus_neighbor_top = confirm_to_cancel
|
||||
_confirm_button.focus_neighbor_bottom = confirm_to_cancel
|
||||
_confirm_button.focus_neighbor_top = _confirm_button.get_path_to(
|
||||
_confirm_button
|
||||
)
|
||||
_confirm_button.focus_neighbor_bottom = _confirm_button.focus_neighbor_top
|
||||
_cancel_button.focus_neighbor_left = cancel_to_confirm
|
||||
_cancel_button.focus_neighbor_right = cancel_to_confirm
|
||||
_cancel_button.focus_neighbor_top = cancel_to_confirm
|
||||
_cancel_button.focus_neighbor_bottom = cancel_to_confirm
|
||||
_cancel_button.focus_neighbor_top = _cancel_button.get_path_to(
|
||||
_cancel_button
|
||||
)
|
||||
_cancel_button.focus_neighbor_bottom = _cancel_button.focus_neighbor_top
|
||||
|
||||
|
||||
func _set_interactive(interactive: bool) -> void:
|
||||
|
|
@ -211,6 +215,8 @@ func _set_interactive(interactive: bool) -> void:
|
|||
if interactive
|
||||
else Control.MOUSE_FILTER_IGNORE
|
||||
)
|
||||
if interactive:
|
||||
_configure_focus()
|
||||
|
||||
|
||||
func _finish_transition_in(
|
||||
|
|
|
|||
|
|
@ -169,10 +169,12 @@ func _on_choice_gui_input(event: InputEvent, index: int) -> void:
|
|||
close_choices()
|
||||
get_viewport().set_input_as_handled()
|
||||
elif event.is_action_pressed("ui_up"):
|
||||
_choice_buttons[posmod(index - 1, _choice_buttons.size())].grab_focus()
|
||||
_choice_buttons[maxi(index - 1, 0)].grab_focus()
|
||||
get_viewport().set_input_as_handled()
|
||||
elif event.is_action_pressed("ui_down"):
|
||||
_choice_buttons[(index + 1) % _choice_buttons.size()].grab_focus()
|
||||
_choice_buttons[mini(
|
||||
index + 1, _choice_buttons.size() - 1
|
||||
)].grab_focus()
|
||||
get_viewport().set_input_as_handled()
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue