Description
I use Select component of Gluestack in bare React Native, after upgrading react-native-gesture-handler from v2 to v3 (3.0.2), any TextInput with pointerEvents="none" and editable={false} placed inside a Pressable prevents the Pressable from receiving touch events. Tapping the area where the TextInput is rendered does not trigger onPress, while tapping other children (e.g., an icon) works correctly.
This breaks components like Gluestack UI’s Select, where the trigger contains a non-editable SelectInput (rendered as a TextInput) and an icon. Only the icon area can open the select; touching the input text area does nothing.
Steps to reproduce
Steps to reproduce
Create a Pressable that wraps a TextInput with pointerEvents="none" and editable={false}, and an Icon.
Try to tap the TextInput area.
Notice that onPress does not fire. Tapping the icon area works fine.
Here’s a minimal code snippet that reproduces the issue:
import React from 'react';
import { Pressable, TextInput, View, Text } from 'react-native';
import { GestureHandlerRootView } from 'react-native-gesture-handler';
export default function App() {
const [count, setCount] = React.useState(0);
return (
<GestureHandlerRootView style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
<Pressable
onPress={() => setCount(c => c + 1)}
style={{ borderWidth: 1, padding: 10 }}
>
{/* This TextInput breaks the Pressable on RNGH v3 */}
<TextInput
value="Tap me"
editable={false}
pointerEvents="none"
style={{ color: 'black' }}
/>
<Text>Icon area (works)</Text>
</Pressable>
<Text style={{ marginTop: 20 }}>Press count: {count}</Text>
</GestureHandlerRootView>
);
}
A link to a Gist, an Expo Snack or a link to a repository based on this template that reproduces the bug.
...
Gesture Handler version
3.0.2
React Native version
0.86.0
Platforms
Android
JavaScript runtime
None
Workflow
React Native (without Expo)
Architecture
New Architecture (Fabric)
Build type
Debug mode
Device
Real device
Device model
Samsung Galaxy J8 (Android 10)
Acknowledgements
Yes
Description
I use Select component of Gluestack in bare React Native, after upgrading react-native-gesture-handler from v2 to v3 (3.0.2), any TextInput with pointerEvents="none" and editable={false} placed inside a Pressable prevents the Pressable from receiving touch events. Tapping the area where the TextInput is rendered does not trigger onPress, while tapping other children (e.g., an icon) works correctly.
This breaks components like Gluestack UI’s Select, where the trigger contains a non-editable SelectInput (rendered as a TextInput) and an icon. Only the icon area can open the select; touching the input text area does nothing.
Steps to reproduce
Steps to reproduce
Create a Pressable that wraps a TextInput with pointerEvents="none" and editable={false}, and an Icon.
Try to tap the TextInput area.
Notice that onPress does not fire. Tapping the icon area works fine.
Here’s a minimal code snippet that reproduces the issue:
A link to a Gist, an Expo Snack or a link to a repository based on this template that reproduces the bug.
...
Gesture Handler version
3.0.2
React Native version
0.86.0
Platforms
Android
JavaScript runtime
None
Workflow
React Native (without Expo)
Architecture
New Architecture (Fabric)
Build type
Debug mode
Device
Real device
Device model
Samsung Galaxy J8 (Android 10)
Acknowledgements
Yes