From 00940d94608e019626b05a01499fba9ef85e58de Mon Sep 17 00:00:00 2001 From: mikegarfinkle Date: Tue, 31 Jan 2023 10:07:58 -0800 Subject: [PATCH] fix: added close accessibility tap area --- example/src/index.tsx | 1 + packages/drawer/src/types.tsx | 6 ++++++ packages/drawer/src/views/DrawerView.tsx | 2 ++ packages/drawer/src/views/legacy/Drawer.tsx | 3 ++- packages/drawer/src/views/legacy/Overlay.tsx | 16 ++++++++++++++-- packages/drawer/src/views/modern/Drawer.tsx | 3 ++- packages/drawer/src/views/modern/Overlay.tsx | 16 ++++++++++++++-- 7 files changed, 41 insertions(+), 6 deletions(-) diff --git a/example/src/index.tsx b/example/src/index.tsx index 761f5bb944..7dbca9b4fd 100644 --- a/example/src/index.tsx +++ b/example/src/index.tsx @@ -230,6 +230,7 @@ export default function App() { { renderDrawerContent, renderSceneContent, gestureHandlerProps, + overlayAccessibilityLabel, } = this.props; const isOpen = drawerType === 'permanent' ? true : open; @@ -582,6 +583,7 @@ export default class DrawerView extends React.Component { this.toggleDrawer(false)} + accessibilityLabel={overlayAccessibilityLabel} style={overlayStyle as any} accessibilityElementsHidden={!isOpen} importantForAccessibility={ @@ -609,7 +611,6 @@ export default class DrawerView extends React.Component { /> )} & { progress: Animated.Node; onPress: () => void; + accessibilityLabel?: string; }; const Overlay = React.forwardRef(function Overlay( - { progress, onPress, style, ...props }: Props, + { + progress, + onPress, + style, + accessibilityLabel = 'Close drawer', + ...props + }: Props, ref: React.Ref ) { const animatedStyle = { @@ -48,7 +55,12 @@ const Overlay = React.forwardRef(function Overlay( ref={ref} style={[styles.overlay, overlayStyle, animatedStyle, style]} > - + ); }); diff --git a/packages/drawer/src/views/modern/Drawer.tsx b/packages/drawer/src/views/modern/Drawer.tsx index 135674130a..9909e9698e 100644 --- a/packages/drawer/src/views/modern/Drawer.tsx +++ b/packages/drawer/src/views/modern/Drawer.tsx @@ -61,6 +61,7 @@ export default function Drawer({ swipeEdgeWidth, swipeEnabled, swipeVelocityThreshold, + overlayAccessibilityLabel, }: DrawerProps) { const getDrawerWidth = (): number => { const { width = DEFAULT_DRAWER_WIDTH } = @@ -378,11 +379,11 @@ export default function Drawer({ toggleDrawer({ open: false, isUserInitiated: true }) } style={overlayStyle} + accessibilityLabel={overlayAccessibilityLabel} /> ) : null} & { progress: Animated.SharedValue; onPress: () => void; + accessibilityLabel?: string; }; const Overlay = React.forwardRef(function Overlay( - { progress, onPress, style, ...props }: Props, + { + progress, + onPress, + style, + accessibilityLabel = 'Close drawer', + ...props + }: Props, ref: React.Ref ) { const animatedStyle = useAnimatedStyle(() => { @@ -42,7 +49,12 @@ const Overlay = React.forwardRef(function Overlay( style={[styles.overlay, overlayStyle, animatedStyle, style]} animatedProps={animatedProps} > - + ); });