-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Open
Labels
type: bugtype: featurePull requests that introduces new featurePull requests that introduces new featurevalidA valid contribution where maintainers will review based on priorityA valid contribution where maintainers will review based on priority
Description
-
The current implementation of StarredMessagesTab.tsx and MentionsTab.tsx fetches all historical records using a sequential for loop inside the useQuery hook.
-
This causes a blocking UI state where users cannot see any results until the server has responded to every single pagination request.
-
Actual Behavior:
The code uses a loop like this:
for (let offset = 0, result = await getStarredMessages({ roomId, offset: 0 }); ...) {
messages.push(...result.messages);
}
This means Page 2 cannot start loading until Page 1 is fully completed and mapped.
- Expected Behavior:
- The application should use Infinite Loading (Streaming).
- Page 1 should be displayed as soon as it is available, and subsequent pages should only be fetched as the user reaches the bottom of the list.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
type: bugtype: featurePull requests that introduces new featurePull requests that introduces new featurevalidA valid contribution where maintainers will review based on priorityA valid contribution where maintainers will review based on priority