Skip to content

Commit 7af1755

Browse files
authored
fix: Fix scroll issue on the AddOperatorsModal and MutedMembersModal (#1014)
### ChangeLog & Fix * Fixed a specific environment issue (Android emulator) - Resolved an issue in modals used in ChannelSettings such as MembersModal, MutedMembersModal, OperatorsModal, BannedUsersModal, **AddOperatorsModal**, where even when scrolling to the end, additional members were not fetched
1 parent cc526e3 commit 7af1755

File tree

2 files changed

+16
-17
lines changed

2 files changed

+16
-17
lines changed

src/modules/ChannelSettings/components/ModerationPanel/AddOperatorsModal.tsx

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import React, {
44
useState,
55
useContext,
66
} from 'react';
7+
import { OperatorFilter } from '@sendbird/chat/groupChannel';
78

89
import { LocalizationContext } from '../../../../lib/LocalizationContext';
910
import Modal from '../../../../ui/Modal';
@@ -14,7 +15,7 @@ import Label, {
1415
import { ButtonTypes } from '../../../../ui/Button';
1516
import UserListItem from '../../../../ui/UserListItem';
1617
import { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';
17-
import { OperatorFilter } from '@sendbird/chat/groupChannel';
18+
import { useOnScrollPositionChangeDetector } from '../../../../hooks/useOnScrollReachedEndDetector';
1819

1920
interface Props {
2021
onCancel(): void;
@@ -67,21 +68,19 @@ export default function AddOperatorsModal({
6768
</Label>
6869
<div
6970
className="sendbird-more-members__popup-scroll"
70-
onScroll={(e) => {
71-
const { hasNext } = memberQuery;
72-
const target = e.target as HTMLTextAreaElement;
73-
const fetchMore = (
74-
target.clientHeight + target.scrollTop === target.scrollHeight
75-
);
76-
if (hasNext && fetchMore) {
77-
memberQuery.next().then((o) => {
78-
setMembers([
79-
...members,
80-
...o,
81-
]);
82-
});
83-
}
84-
}}
71+
onScroll={useOnScrollPositionChangeDetector({
72+
onReachedBottom: async () => {
73+
const { hasNext } = memberQuery;
74+
if (hasNext) {
75+
memberQuery.next().then((o) => {
76+
setMembers([
77+
...members,
78+
...o,
79+
]);
80+
});
81+
}
82+
},
83+
})}
8584
>
8685
{
8786
members.map((member) => (

src/modules/ChannelSettings/components/ModerationPanel/MutedMembersModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export default function MutedMembersModal({
3232

3333
useEffect(() => {
3434
const memberUserListQuery = channel?.createMemberListQuery({
35-
limit: 10,
35+
limit: 20,
3636
// @ts-ignore
3737
mutedMemberFilter: 'muted',
3838
});

0 commit comments

Comments
 (0)