diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/view/com/composer/text-input/web/EmojiPicker.web.tsx | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/src/view/com/composer/text-input/web/EmojiPicker.web.tsx b/src/view/com/composer/text-input/web/EmojiPicker.web.tsx index a0d1f67d6..bfd3b9c6e 100644 --- a/src/view/com/composer/text-input/web/EmojiPicker.web.tsx +++ b/src/view/com/composer/text-input/web/EmojiPicker.web.tsx @@ -58,21 +58,27 @@ export function EmojiPicker({close}: {close: () => void}) { // eslint-disable-next-line react-native-a11y/has-valid-accessibility-descriptors <TouchableWithoutFeedback onPress={close} accessibilityViewIsModal> <View style={styles.mask}> - <View - style={[ - styles.picker, - { - paddingTop: noPadding ? 0 : reducedPadding ? 150 : 325, - display: noPicker ? 'none' : 'flex', - }, - ]}> - <Picker - // @ts-ignore we set emojiMartData in `emoji-mart-data.js` file - data={window.emojiMartData} - onEmojiSelect={onInsert} - autoFocus={false} - /> - </View> + {/* eslint-disable-next-line react-native-a11y/has-valid-accessibility-descriptors */} + <TouchableWithoutFeedback + onPress={e => { + e.stopPropagation() // prevent event from bubbling up to the mask + }}> + <View + style={[ + styles.picker, + { + paddingTop: noPadding ? 0 : reducedPadding ? 150 : 325, + display: noPicker ? 'none' : 'flex', + }, + ]}> + <Picker + // @ts-ignore we set emojiMartData in `emoji-mart-data.js` file + data={window.emojiMartData} + onEmojiSelect={onInsert} + autoFocus={false} + /> + </View> + </TouchableWithoutFeedback> </View> </TouchableWithoutFeedback> ) |