-
-
Notifications
You must be signed in to change notification settings - Fork 22k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automatic UI focus navigation regularly skips nodes when using controller on macOS #103898
Comments
May be related to #103895, but seemed distinct enough for me to make two issue reports. |
Do you use the D-pad keys or the axes for control? |
I used the controller joysticks, so axis. |
This may be an issue about the controller. |
Yeah maybe! I've reproduced this on macOS with a wired Xbox controller, a PS4 controller, and an 8BitDo Pro 2 controller. Especially the PS4 controller was displaying this issue, sometimes skipping even 2 or 3 buttons: Screen.Recording.2025-03-10.at.12.06.18.mp4My colleague on Windows can't reproduce it, but it would be great if others on Windows and Linux could try it so we can pinpoint this to the improvements controller support on macOS for 4.4. |
If you can reproduce it with keyboard and controller buttons, then it is most likely a focus issue. I remember seeing a related issue report, but I can't find it yet. |
I cannot reproduce it with keyboard or the dpad on controller, so then according to your logic it is a controller input issue. Perhaps on macOS the ui_* [up / down / left / right] is triggered multiple times? I'm just spitballing here. |
I just tested this in Godot 4.3 and it shows the correct behavior there, meaning this is a regression from 4.3. If this is a regression from changes between 4.3 and 4.4, and only applicable on macOS, and only related to controller, then @stuartcarnie's rewrite of the macOS controller stuff is only PR I could find that may have introduced this, unless there's some other platform specific stuff I couldn't find. |
Can you still reproduce it after manually specifying |
Good question! It does still happen when I enter the focus neighbors. So this is increasingly looking to be a controller-related issue. |
I can reproduce it with analog stick (but not the d-pad). |
Seems like the issue happens when multiple events are sent during the same physics frame. Not sure if it's macOS only issue. |
Tested versions
System information
Godot v4.4.stable - macOS Sequoia (15.3.1) - Multi-window, 2 monitors - Metal (Mobile) - integrated Apple M3 Max (Apple9) - Apple M3 Max (14 threads)
Issue description
Automatic UI focus navigation regularly skip nodes when using controller. I've made an MRP to help debug this issue. I also made a video below showing the faulty behavior at:
Screen.Recording.2025-03-10.at.11.14.00.mp4
Steps to reproduce
Minimal reproduction project (MRP)
focus-mrp2.zip
The text was updated successfully, but these errors were encountered: