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
Implement screen reader support using AccessKit library. #76829
base: master
Are you sure you want to change the base?
Conversation
7080b24
to
f964077
Compare
c547617
to
d350cf5
Compare
4194d2c
to
8a0e3dd
Compare
5ad88d1
to
805a2e2
Compare
Hi there. is the main editor supposed to work with screen readers as of yet? or only games? |
Standard controls used in the editor should work, but the editor have a lot of custom elements. For most of them (like 2D/3D canvas editor), it will be really hard (if possible) to implement accessibility. |
Hi, thanks. How do I enable the accessibility? I managed to compile it from source. Based on the code it looks like the accessibility or screen reader should be detected automaticly... When I am in the editor and I use the tab and arrow keys, it doesn't speak anything. |
721935c
to
5f1e713
Compare
5f1e713
to
258be15
Compare
485752b
to
365149a
Compare
494a155
to
066fa9b
Compare
17598dd
to
ba7f286
Compare
2ec4d0f
to
c6b73c3
Compare
Hello. Would be possible for the future make context menus (like the menu bar) readable for screen readers? currently it only announces menu bar and it reads nothing, and that was possible with the old godot 3.2 with nolan's plugin. If yes, that would be very great, as with this current version, almost all is readable, but to start to messing with this as I did before with nolan's plugins, we need that the context menus become accessible/readable. thanks much! |
Initial implementation of the AccessKit integration use C-API:
All base (non-editor) controls except
GraphEditor
should work now. UI behavior without active screen reader should be unchanged. When screen reader is running, some controls that normally do not can accept keyboard focus (Label
,RTL
,TabBar
) and extra keyboard actions (switching tabs, selecting RTL paragraph and embedded images/tables, selecting embeddedTreeItem
buttons).Additionally, provides access to some accessibility related OS settings (high contrast, reduce animation, reduce transparency and screen reader status)
Screen recordings (updated)
2023-06-02.13-13-41.mp4
Expects
accesskit_sdk_path
command line argument or environment variable with the path to the pre-build AccessKit-C 0.9.0 folder.Supersede #72886
Fixes #58074
Implements godotengine/godot-proposals#983 (partial)
Implements godotengine/godot-proposals#1964