Add support for the UIAccessibilityTraitsTabBar

Summary:
Changelog:
Add the capability to set tabbar accessibilityRole which maps to the iOS's UIAccessibilityTraitsTabBar

Reviewed By: yungsters

Differential Revision: D30490752

fbshipit-source-id: f7561a8932306e133d2f65a5ab40ba0be3899ec3
This commit is contained in:
Jimmy Zhang authored and Facebook GitHub Bot committed 2021-08-24 02:31:17 -07:00
1 parent ff4b33672a
commit 11f8d9c7cd
8 files changed
+18

No files matched your search

@@ -39,6 +39,7 @@ export type AccessibilityRole =
| 'spinbutton'
| 'switch'
| 'tab'
| 'tabbar'
| 'tablist'
| 'timer'
| 'list'
+3
View File
@@ -141,6 +141,9 @@ inline UIAccessibilityTraits RCTUIAccessibilityTraitsFromAccessibilityTraits(
if ((accessibilityTraits & AccessibilityTraits::Switch) != AccessibilityTraits::None) {
result |= AccessibilityTraitSwitch;
}
if ((accessibilityTraits & AccessibilityTraits::TabBar) != AccessibilityTraits::None) {
result |= UIAccessibilityTraitTabBar;
}
return result;
};
+1
View File
@@ -58,6 +58,7 @@ RCT_MULTI_ENUM_CONVERTER(
@"spinbutton" : @(UIAccessibilityTraitNone),
@"switch" : @(SwitchAccessibilityTrait),
@"tab" : @(UIAccessibilityTraitNone),
@"tabbar" : @(UIAccessibilityTraitTabBar),
@"tablist" : @(UIAccessibilityTraitNone),
@"timer" : @(UIAccessibilityTraitNone),
@"toolbar" : @(UIAccessibilityTraitNone),
@@ -618,6 +618,8 @@ inline std::string toString(const AccessibilityRole &accessibilityRole) {
return "switch";
case AccessibilityRole::Tab:
return "tab";
case AccessibilityRole::TabBar:
return "tabbar";
case AccessibilityRole::Tablist:
return "tablist";
case AccessibilityRole::Timer:
@@ -687,6 +689,8 @@ inline void fromRawValue(
result = AccessibilityRole::Switch;
} else if (string == "tab") {
result = AccessibilityRole::Tab;
} else if (string == "tabbar") {
result = AccessibilityRole::TabBar;
} else if (string == "tablist") {
result = AccessibilityRole::Tablist;
} else if (string == "timer") {
@@ -112,6 +112,7 @@ enum class AccessibilityRole {
Spinbutton,
Switch,
Tab,
TabBar,
Tablist,
Timer,
Toolbar,
@@ -33,6 +33,7 @@ enum class AccessibilityTraits : uint32_t {
CausesPageTurn = (1 << 14),
Header = (1 << 15),
Switch = (1 << 16),
TabBar = (1 << 17),
};
constexpr enum AccessibilityTraits operator|(
@@ -94,6 +94,10 @@ inline void fromString(const std::string &string, AccessibilityTraits &result) {
result = AccessibilityTraits::Switch;
return;
}
if (string == "tabbar") {
result = AccessibilityTraits::TabBar;
return;
}
result = AccessibilityTraits::None;
}
@@ -288,6 +288,9 @@ NSDictionary<NSAttributedStringKey, id> *RCTNSTextAttributesFromTextAttributes(T
case AccessibilityRole::Tab:
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tab");
break;
case AccessibilityRole::TabBar:
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tabbar");
break;
case AccessibilityRole::Tablist:
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tablist");
break;