Merge pull request #113475 from ndarilek/fix-editor-initial-focus-screen-reader

Editor: Set initial focus for screen reader users
This commit is contained in:
Rémi Verschelde
2026-01-01 16:46:14 +01:00

View File

@@ -1443,6 +1443,20 @@ void EditorNode::_sources_changed(bool p_exist) {
if (!singleton->cmdline_mode) {
EditorResourcePreview::get_singleton()->start();
}
// Set initial focus for screen reader users.
if (get_tree()->is_accessibility_enabled()) {
if (SceneTreeDock::get_singleton()->is_visible_in_tree()) {
SceneTreeDock::get_singleton()->get_tree_editor()->get_scene_tree()->grab_focus();
} else {
TabContainer *tab_container = EditorDockManager::get_singleton()->get_dock_tab_container(SceneTreeDock::get_singleton());
if (tab_container) {
// Another tab is active (e.g., Import) - focus the tab bar so user can switch.
tab_container->get_tab_bar()->grab_focus();
}
}
}
get_tree()->create_timer(1.0f)->connect("timeout", callable_mp(this, &EditorNode::_remove_lock_file));
}
}