diff --git a/packages/tui/src/routes/session/sidebar.tsx b/packages/tui/src/routes/session/sidebar.tsx
index c1434b1fffd..533ef1dc5f1 100644
--- a/packages/tui/src/routes/session/sidebar.tsx
+++ b/packages/tui/src/routes/session/sidebar.tsx
@@ -29,16 +29,40 @@ export function Sidebar(props: { sessionID: string; overlay?: boolean }) {
paddingRight={2}
position={props.overlay ? "absolute" : "relative"}
>
+
+
+ {withTimestampedFallback(session())}
+
+
+ {session().location.workspaceID}
+
+
- queueMicrotask(() => {
- if (!scroll.isDestroyed) scroll.verticalScrollBar.resetVisibilityControl()
- })
- }
flexGrow={1}
+ minHeight={0}
scrollAcceleration={scrollAcceleration()}
+ // The sidebar only scrolls vertically; a horizontal bar steals a row during initial layout.
+ horizontalScrollbarOptions={{ visible: false }}
verticalScrollbarOptions={{
- visible: false,
+ // Use the content's reserved right padding instead of changing its width when the bar toggles.
+ position: "absolute",
+ right: 0,
+ top: 0,
+ width: 1,
+ height: "100%",
trackOptions: {
backgroundColor: theme.background.default,
foregroundColor: theme.scrollbar.default,
@@ -46,27 +70,6 @@ export function Sidebar(props: { sessionID: string; overlay?: boolean }) {
}}
>
-
-
- {withTimestampedFallback(session())}
-
-
- {session().location.workspaceID}
-
-