Adds a navigationOrderInRenderOrder property for MacOS keyboard focus management. In some cases the auto-calculated key view loop may use the center point of focusable controls to determine the focus order. This property is available to make using the "render order" (the natural order of the accessible children as returned by NSView.accessibilityChildren) the order that should be used for navigation purposes. Note that to participate in the key view loop process the FocusZone itself must be:
accessible
have an appropriate accessibilityRole
This PR also corrects the FocusZone prop type to incorporate the naturally relevant ViewProps since FocusZone is inherently a View underneath, and this eases maintenance and developer ergonomics.
Verification
Manually tested.
Pull request checklist
This PR has considered (when applicable):
[ ] Automated Tests
[ ] Documentation and examples
[x] Keyboard Accessibility
[x] Voiceover
[ ] Internationalization and Right-to-left Layouts
Platforms Impacted
Description of changes
Adds a
navigationOrderInRenderOrder
property for MacOS keyboard focus management. In some cases the auto-calculated key view loop may use the center point of focusable controls to determine the focus order. This property is available to make using the "render order" (the natural order of the accessible children as returned byNSView.accessibilityChildren
) the order that should be used for navigation purposes. Note that to participate in the key view loop process the FocusZone itself must be:accessible
accessibilityRole
This PR also corrects the FocusZone prop type to incorporate the naturally relevant
ViewProps
since FocusZone is inherently aView
underneath, and this eases maintenance and developer ergonomics.Verification
Manually tested.
Pull request checklist
This PR has considered (when applicable):