Skip to content

Commit 36b1d6b

Browse files
committed
fix: scroll to recent issues
1 parent 2603ff1 commit 36b1d6b

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

package/src/components/Channel/Channel.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -948,8 +948,8 @@ const ChannelWithContext = <
948948
}
949949
}
950950
const hasLatestMessages = channel.state.latestMessages.length > 0;
951-
channel.state.setIsUpToDate(hasLatestMessages);
952-
setHasNoMoreRecentMessagesToLoad(hasLatestMessages);
951+
channel.state.setIsUpToDate(!hasLatestMessages);
952+
setHasNoMoreRecentMessagesToLoad(!hasLatestMessages);
953953
copyChannelState();
954954
if (scrollToMessageIndex !== -1) {
955955
// since we need to scroll after immediately do this without throttle
@@ -1888,10 +1888,12 @@ const ChannelWithContext = <
18881888
const latestLengthBeforeMerge = latestMessageSet?.messages.length || 0;
18891889
const didMerge = mergeOverlappingMessageSetsRef.current(true);
18901890
if (didMerge) {
1891-
if (latestMessageSet && latestLengthBeforeMerge >= limit) {
1891+
if (latestMessageSet && latestLengthBeforeMerge > 0) {
1892+
const shouldSetStateUpToDate =
1893+
latestMessageSet.messages.length < limit && latestMessageSet.isCurrent;
18921894
setLoadingMoreRecent(true);
1893-
channel.state.setIsUpToDate(true);
1894-
setHasNoMoreRecentMessagesToLoad(true);
1895+
channel.state.setIsUpToDate(shouldSetStateUpToDate);
1896+
setHasNoMoreRecentMessagesToLoad(shouldSetStateUpToDate);
18951897
loadMoreRecentFinished(channel.state.messages);
18961898
restartSetsMergeFuncRef.current();
18971899
return;

0 commit comments

Comments
 (0)