godotengine / godotengine/godot
Accessibility: Focus is not transferred to the 'Import Project' dialog
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
v4.5.rc2 (Also observed in v4.5.dev7)
### System information
Windows 10, NVDA screen reader v2024.4.2
### Issue description
When the Project Manager list is empty and a user chooses to import a project, the keyboard and screen reader focus does not correctly move to the newly opened 'Import' dialog.
After selecting a `.project.godot` file, the import dialog appears, but the focus remains stuck on the 'Import' button in the main Project Manager window. Consequently, keyboard input (like `Tab`, `Enter`, or typing) does not register in the new dialog, making it completely unusable for anyone relying on keyboard-only navigation or a screen reader.
The only workaround is to use the mouse to manually click on the import dialog, at which point focus is correctly transferred and it becomes usable. This presents a major barrier for users who cannot use a mouse.
### Steps to reproduce
1. Ensure no projects are currently listed in the Godot Project Manager. (This is crucial, the bug occurs when the list is empty).
2. Launch the Godot Project Manager with a screen reader running.
3. Navigate to and activate the "Import" button.
4. The system's file browser will open. Select a valid `.project.godot` file and click "Open".
5. The 'Import Project' dialog now appears on top of the Project Manager.
**Expected result:** The keyboard and screen reader focus should automatically move to the new 'Import Project' dialog, allowing the user to interact with its elements (like the "Import & Edit" button) immediately via the keyboard.
**Actual result:** The 'Import Project' dialog appears, but the focus remains on the "Import" button in the background window. No keyboard interaction with the new dialog is possible until it is manually clicked with a mouse.
### Minimal reproduction project (MRP)
This is an issue with the Project Manager's UI and does not depend on the contents of the project being imported. Any valid Godot 4 project can be used to trigger this bug. One can test this by creating a new blank project, closing it, removing it from the list, and then attempting to import it.
Contributor guide
Research direction
Reproduce the issue in the Godot Project Manager with an empty project list, a screen reader, and a valid .project.godot file. Trace the Project Manager's Import button and the resulting Import Project dialog, then verify that keyboard and screen-reader focus moves into the dialog immediately and that its controls can be operated without a mouse.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- accessibility, desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 50/100