Commit a83c2aa
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
File tree
- src
- components
- tool-renderers
- lib
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
394 | 394 | | |
395 | 395 | | |
396 | 396 | | |
| 397 | + | |
| 398 | + | |
397 | 399 | | |
398 | 400 | | |
399 | 401 | | |
| |||
408 | 410 | | |
409 | 411 | | |
410 | 412 | | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
411 | 419 | | |
412 | 420 | | |
413 | 421 | | |
| |||
510 | 518 | | |
511 | 519 | | |
512 | 520 | | |
| 521 | + | |
513 | 522 | | |
514 | 523 | | |
515 | 524 | | |
| |||
0 commit comments