Skip to content

Commit a83c2aa

Browse files
OpenSource03claude
andcommitted
feat: progressive chat rendering, deferred mount, and diff viewer consolidation
Improve chat performance with progressive hydration (render bottom rows first, hydrate older rows in background batches), deferred content mount (shows spinner for one frame to avoid UI freeze on session/space switch), and smarter scroll-to-bottom locking that respects user intent. Consolidate LightDiffViewer into DiffViewer with Monaco-based rendering and fix measurement timing via settle delays for hideUnchangedRegions. Add chat-ui-state context for persisting expand/collapse state across re-renders. Optimize MessageBubble with CSS containment, lazy syntax highlighting, and extracted ToolCall/ToolGroupBlock rendering. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent d9a5c62 commit a83c2aa

20 files changed

Lines changed: 1757 additions & 1296 deletions

src/components/AgentTranscriptViewer.tsx

Lines changed: 123 additions & 202 deletions
Large diffs are not rendered by default.

src/components/AppLayout.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,8 @@ Link: ${issue.url}`;
394394
activeSessionId={manager.activeSessionId}
395395
jiraBoardProjectId={jiraBoardProjectId}
396396
jiraBoardEnabled={jiraBoardEnabled}
397+
foldersByProject={o.foldersByProject}
398+
organizeByChatBranch={settings.organizeByChatBranch}
397399
onNewChat={handleOpenNewChat}
398400
onToggleProjectJiraBoard={handleToggleProjectJiraBoard}
399401
onSelectSession={handleSidebarSelectSession}
@@ -408,6 +410,12 @@ Link: ${issue.url}`;
408410
onNavigateToMessage={handleNavigateToMessage}
409411
onMoveProjectToSpace={handleMoveProjectToSpace}
410412
onReorderProject={projectManager.reorderProject}
413+
onPinSession={o.handlePinSession}
414+
onMoveSessionToFolder={o.handleMoveSessionToFolder}
415+
onCreateFolder={o.handleCreateFolder}
416+
onRenameFolder={o.handleRenameFolder}
417+
onDeleteFolder={o.handleDeleteFolder}
418+
onSetOrganizeByChatBranch={settings.setOrganizeByChatBranch}
411419
spaces={spaceManager.spaces}
412420
activeSpaceId={spaceManager.activeSpaceId}
413421
onSelectSpace={spaceManager.setActiveSpaceId}
@@ -510,6 +518,7 @@ Link: ${issue.url}`;
510518
/>
511519
)}
512520
<ChatView
521+
spaceId={spaceManager.activeSpaceId}
513522
messages={manager.messages}
514523
isProcessing={manager.isProcessing}
515524
showThinking={showThinking}

0 commit comments

Comments
 (0)