File tree Expand file tree Collapse file tree
apps/web/src/components/chat Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -50,6 +50,7 @@ export const ChangedFilesTree = memo(function ChangedFilesTree(props: {
5050 < div key = { `dir:${ node . path } ` } >
5151 < button
5252 type = "button"
53+ data-scroll-anchor-ignore
5354 className = "group flex w-full items-center gap-1.5 rounded-md py-1 pr-2 text-left hover:bg-background/80"
5455 style = { { paddingLeft : `${ leftPadding } px` } }
5556 onClick = { ( ) => toggleDirectory ( node . path , depth === 0 ) }
Original file line number Diff line number Diff line change @@ -245,9 +245,14 @@ export const MessagesTimeline = memo(function MessagesTimeline({
245245 rowVirtualizer . measure ( ) ;
246246 } , [ rowVirtualizer , timelineWidthPx ] ) ;
247247 useEffect ( ( ) => {
248- rowVirtualizer . shouldAdjustScrollPositionOnItemSizeChange = ( _item , _delta , instance ) => {
248+ rowVirtualizer . shouldAdjustScrollPositionOnItemSizeChange = ( item , _delta , instance ) => {
249249 const viewportHeight = instance . scrollRect ?. height ?? 0 ;
250250 const scrollOffset = instance . scrollOffset ?? 0 ;
251+ const itemIntersectsViewport =
252+ item . end > scrollOffset && item . start < scrollOffset + viewportHeight ;
253+ if ( itemIntersectsViewport ) {
254+ return false ;
255+ }
251256 const remainingDistance = instance . getTotalSize ( ) - ( scrollOffset + viewportHeight ) ;
252257 return remainingDistance > AUTO_SCROLL_BOTTOM_THRESHOLD_PX ;
253258 } ;
@@ -458,6 +463,7 @@ export const MessagesTimeline = memo(function MessagesTimeline({
458463 type = "button"
459464 size = "xs"
460465 variant = "outline"
466+ data-scroll-anchor-ignore
461467 onClick = { ( ) => onToggleAllDirectories ( turnSummary . turnId ) }
462468 >
463469 { allDirectoriesExpanded ? "Collapse all" : "Expand all" }
You can’t perform that action at this time.
0 commit comments