Skip to content

Commit 0390f3a

Browse files
committed
user [nfc]: Have UserList get presence data, not callers
1 parent 845b08b commit 0390f3a

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

src/user-picker/New1to1PmScreen.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import UserList from '../users/UserList';
99
import type { UserOrBot } from '../types';
1010
import { useSelector, useDispatch } from '../react-redux';
1111
import { pm1to1NarrowFromUser } from '../utils/narrow';
12-
import { getUsers, getPresence } from '../selectors';
12+
import { getUsers } from '../selectors';
1313
import { navigateBack, doNarrow } from '../actions';
1414
import { useNavigation } from '../react-navigation';
1515

@@ -21,7 +21,6 @@ type Props = $ReadOnly<{|
2121
export default function New1to1PmScreen(props: Props): Node {
2222
const dispatch = useDispatch();
2323
const users = useSelector(getUsers);
24-
const presences = useSelector(getPresence);
2524

2625
const navigation = useNavigation();
2726
const handleUserNarrow = useCallback(
@@ -36,7 +35,7 @@ export default function New1to1PmScreen(props: Props): Node {
3635

3736
return (
3837
<Screen search scrollEnabled={false} searchBarOnChange={setFilter}>
39-
<UserList users={users} filter={filter} presences={presences} onPress={handleUserNarrow} />
38+
<UserList users={users} filter={filter} onPress={handleUserNarrow} />
4039
</Screen>
4140
);
4241
}

src/user-picker/UserPickerCard.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import { IconDone } from '../common/Icons';
1414
import UserList from '../users/UserList';
1515
import AvatarList from './AvatarList';
1616
import AnimatedScaleComponent from '../animation/AnimatedScaleComponent';
17-
import { getUsers, getPresence } from '../selectors';
17+
import { getUsers } from '../selectors';
1818
import { getOwnUserId } from '../users/userSelectors';
1919

2020
const styles = createStyleSheet({
@@ -51,7 +51,6 @@ export default function UserPickerCard(props: Props): Node {
5151
const { filter, showOwnUser } = props;
5252

5353
const users = useSelector(state => getUsersToShow(state, showOwnUser));
54-
const presences = useSelector(getPresence);
5554

5655
const [selectedState, setSelectedState] = useState<$ReadOnlyArray<UserOrBot>>([]);
5756
const listRef = useRef<FlatList<UserOrBot> | null>(null);
@@ -80,7 +79,6 @@ export default function UserPickerCard(props: Props): Node {
8079
<UserList
8180
filter={filter}
8281
users={users}
83-
presences={presences}
8482
selected={selectedState}
8583
onPress={(user: UserOrBot) => {
8684
setSelectedState(state => {

src/users/UserList.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@ import type { Node } from 'react';
44
import { SectionList } from 'react-native';
55
import { useSelector } from '../react-redux';
66

7-
import type { PresenceState, UserOrBot } from '../types';
7+
import type { UserOrBot } from '../types';
88
import { createStyleSheet } from '../styles';
99
import SectionHeader from '../common/SectionHeader';
1010
import SearchEmptyState from '../common/SearchEmptyState';
1111
import UserItem from './UserItem';
1212
import { sortUserList, filterUserList, groupUsersByStatus } from './userHelpers';
1313
import { getMutedUsers } from '../selectors';
14+
import { getPresence } from '../directSelectors';
1415

1516
const styles = createStyleSheet({
1617
list: {
@@ -22,13 +23,14 @@ type Props = $ReadOnly<{|
2223
filter: string,
2324
users: $ReadOnlyArray<UserOrBot>,
2425
selected?: $ReadOnlyArray<UserOrBot>,
25-
presences: PresenceState,
2626
onPress: (user: UserOrBot) => void,
2727
|}>;
2828

2929
export default function UserList(props: Props): Node {
30-
const { filter, users, presences, onPress, selected = [] } = props;
30+
const { filter, users, onPress, selected = [] } = props;
3131
const mutedUsers = useSelector(getMutedUsers);
32+
const presences = useSelector(getPresence);
33+
3234
const filteredUsers = filterUserList(users, filter).filter(user => !mutedUsers.has(user.user_id));
3335

3436
if (filteredUsers.length === 0) {

0 commit comments

Comments
 (0)