From 75760161ba3a3f50c85405a9d0f5253dc8449ef3 Mon Sep 17 00:00:00 2001 From: klopez4212 Date: Sun, 28 Jun 2026 09:58:06 +0100 Subject: [PATCH] Fix task paging and scroll settling --- desktop/src/features/channels/ui/ChannelPane.tsx | 1 + desktop/src/features/channels/ui/ChannelTasksView.tsx | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/desktop/src/features/channels/ui/ChannelPane.tsx b/desktop/src/features/channels/ui/ChannelPane.tsx index 016f5b04f..01b97df6a 100644 --- a/desktop/src/features/channels/ui/ChannelPane.tsx +++ b/desktop/src/features/channels/ui/ChannelPane.tsx @@ -773,6 +773,7 @@ export const ChannelPane = React.memo(function ChannelPane({ fetchOlder={fetchOlder} hasOlderMessages={hasOlderMessages} isFetchingOlder={isFetchingOlder} + isTimelineLoading={isTimelineLoading} messages={messages} onOpenAgentConversation={handleOpenAgentConversation} onGoToTaskMessage={handleGoToTaskMessage} diff --git a/desktop/src/features/channels/ui/ChannelTasksView.tsx b/desktop/src/features/channels/ui/ChannelTasksView.tsx index 682956477..b7d701909 100644 --- a/desktop/src/features/channels/ui/ChannelTasksView.tsx +++ b/desktop/src/features/channels/ui/ChannelTasksView.tsx @@ -29,6 +29,7 @@ type ChannelTasksViewProps = { fetchOlder?: () => Promise; hasOlderMessages?: boolean; isFetchingOlder?: boolean; + isTimelineLoading?: boolean; messages: readonly TimelineMessage[]; onOpenAgentConversation?: ( message: TimelineMessage, @@ -146,6 +147,7 @@ export function ChannelTasksView({ fetchOlder, hasOlderMessages, isFetchingOlder, + isTimelineLoading, onOpenAgentConversation, onGoToTaskMessage, profiles, @@ -156,7 +158,9 @@ export function ChannelTasksView({ () => new Map(messages.map((message) => [message.id, message])), [messages], ); - const canLoadOlderTasks = Boolean(fetchOlder && hasOlderMessages); + const canLoadOlderTasks = Boolean( + fetchOlder && hasOlderMessages && !isTimelineLoading && messages.length > 0, + ); const handleLoadOlderTasks = React.useCallback(() => { if (!fetchOlder || isFetchingOlder) { return;