GUI: Add accessibility region role for landmark navigation

Adds ROLE_REGION to allow controls to be marked as accessibility
regions/landmarks.

- Add `accessibility_region` property to Control
- Add ROLE_REGION to DisplayServer and AccessKit mapping
- Prevent Container/ScrollContainer from overriding region role
- Fix TabContainer to update accessibility when tabs change
- Mark editor docks, main screen, bottom panel, and scene tabs as regions
This commit is contained in:
Nolan Darilek 2025-12-29 17:30:55 -05:00
parent 5f9a510441
commit d53ab67b83
13 changed files with 57 additions and 2 deletions

View file

@ -40,6 +40,9 @@
</method>
</methods>
<members>
<member name="accessibility_region" type="bool" setter="set_accessibility_region" getter="is_accessibility_region" default="false">
If [code]true[/code], this container is marked as a region for accessibility. Use [member Control.accessibility_name] to give the region a descriptive name. Screen readers can navigate between regions using landmark navigation.
</member>
<member name="mouse_filter" type="int" setter="set_mouse_filter" getter="get_mouse_filter" overrides="Control" enum="Control.MouseFilter" default="1" />
</members>
<signals>