Skip to content

Commit 8cf4d5b

Browse files
jorge-cabfacebook-github-bot
authored andcommitted
Finish adding accessibilityOrder to ReactNative (#50255)
Summary: Pull Request resolved: #50255 Few details where missing for fully enabling accessibilityOrder on ReactNative Changelog: [General][Added] Add accessibilityOrder to iOS and Android Reviewed By: joevilches Differential Revision: D71420768 fbshipit-source-id: 110ba4c42adc193b34e200aab5dd059badbc2e62
1 parent f60e2ca commit 8cf4d5b

File tree

3 files changed

+14
-0
lines changed

3 files changed

+14
-0
lines changed

packages/react-native/Libraries/Components/View/ViewAccessibility.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,11 @@ export type AccessibilityPropsIOS = $ReadOnly<{
325325
export type AccessibilityProps = $ReadOnly<{
326326
...AccessibilityPropsAndroid,
327327
...AccessibilityPropsIOS,
328+
/**
329+
* Array which specifies the order in which the children of a view will be focused by the accessibility service.
330+
*/
331+
accessibilityOrder?: $ReadOnlyArray<string>,
332+
328333
/**
329334
* When `true`, indicates that the view is an accessibility element.
330335
* By default, all the touchable elements are accessible.

packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3945,6 +3945,7 @@ export type AccessibilityPropsIOS = $ReadOnly<{
39453945
export type AccessibilityProps = $ReadOnly<{
39463946
...AccessibilityPropsAndroid,
39473947
...AccessibilityPropsIOS,
3948+
accessibilityOrder?: $ReadOnlyArray<string>,
39483949
accessible?: ?boolean,
39493950
accessibilityLabel?: ?Stringish,
39503951
accessibilityHint?: ?Stringish,

packages/react-native/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -823,6 +823,14 @@ folly::dynamic HostPlatformViewProps::getDiffProps(
823823
result["accessibilityLabelledBy"] = accessibilityLabelledByValues;
824824
}
825825

826+
if (accessibilityOrder != oldProps->accessibilityOrder) {
827+
auto accessibilityChildrenIds = folly::dynamic::array();
828+
for (const auto& accessibilityChildId : accessibilityOrder) {
829+
accessibilityChildrenIds.push_back(accessibilityChildId);
830+
}
831+
result["accessibilityElements"] = accessibilityChildrenIds;
832+
}
833+
826834
if (accessibilityLiveRegion != oldProps->accessibilityLiveRegion) {
827835
switch (accessibilityLiveRegion) {
828836
case AccessibilityLiveRegion::Assertive:

0 commit comments

Comments
 (0)