diff --git a/native/chat/settings/thread-settings-member.react.js b/native/chat/settings/thread-settings-member.react.js --- a/native/chat/settings/thread-settings-member.react.js +++ b/native/chat/settings/thread-settings-member.react.js @@ -40,6 +40,7 @@ import { useSelector } from '../../redux/redux-utils.js'; import { type Colors, useColors, useStyles } from '../../themes/colors.js'; import type { VerticalBounds } from '../../types/layout-types.js'; +import { useNavigateToUserProfileBottomSheet } from '../../user-profile/user-profile-utils.js'; type BaseProps = { +memberInfo: RelativeMemberInfo, @@ -62,6 +63,7 @@ +keyboardState: ?KeyboardState, // withOverlayContext +overlayContext: ?OverlayContextType, + +navigateToUserProfileBottomSheet: (userID: string) => mixed, }; class ThreadSettingsMember extends React.PureComponent<Props> { editButton: ?React.ElementRef<typeof View>; @@ -133,7 +135,10 @@ ? this.props.styles.lastContainer : null; return ( - <View style={[this.props.styles.container, firstItem, lastItem]}> + <TouchableOpacity + onPress={this.onPressUser} + style={[this.props.styles.container, firstItem, lastItem]} + > <View style={this.props.styles.row}> <View style={this.props.styles.userInfoContainer}> <UserAvatar size="S" userID={this.props.memberInfo.id} /> @@ -142,10 +147,14 @@ {editButton} </View> {roleInfo} - </View> + </TouchableOpacity> ); } + onPressUser = () => { + this.props.navigateToUserProfileBottomSheet(this.props.memberInfo.id); + }; + editButtonRef = (editButton: ?React.ElementRef<typeof View>) => { this.editButton = editButton; }; @@ -268,6 +277,9 @@ const keyboardState = React.useContext(KeyboardContext); const overlayContext = React.useContext(OverlayContext); + const navigateToUserProfileBottomSheet = + useNavigateToUserProfileBottomSheet(); + return ( <ThreadSettingsMember {...props} @@ -278,6 +290,7 @@ styles={styles} keyboardState={keyboardState} overlayContext={overlayContext} + navigateToUserProfileBottomSheet={navigateToUserProfileBottomSheet} /> ); });