mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
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:
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'
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in new issue
Block a user