From 8626b9e57845b5a7f638615e8e08c289dfa7e9e3 Mon Sep 17 00:00:00 2001 From: Lukas Van Houten <4269146+lvanhouten@users.noreply.github.com> Date: Mon, 19 Oct 2026 11:03:34 -0400 Subject: [PATCH 1/2] fix: stop the terminal's last row clipping under pane padding FitAddon sizes rows and cols from the computed height and width of xterm's parent element. .terminal-pane is border-box with 8px padding, so those values included 16px the terminal could not use. Fit could then add a row that overflowed the pane and got cut off at the bottom, plus up to two columns past the right edge. Use an 8px margin instead of padding so fit measures only the space xterm can draw in. The gutter looks the same. Co-Authored-By: Claude Opus 5.5 --- src/components/TerminalPane.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/TerminalPane.css b/src/components/TerminalPane.css index b539bc8..57444cb 100644 --- a/src/components/TerminalPane.css +++ b/src/components/TerminalPane.css @@ -9,7 +9,7 @@ .terminal-pane { flex: 1; - padding: 8px; + margin: 8px; box-sizing: border-box; overflow: hidden; min-height: 0; From da0fabb874953b3c5c3c6f520ed1ef205ebcd9a6 Mon Sep 17 00:00:00 2001 From: Lukas Van Houten <4269146+lvanhouten@users.noreply.github.com> Date: Tue, 20 Oct 2026 11:52:16 -0400 Subject: [PATCH 2/2] fix: paint the terminal viewport with the editor background xterm.css sets .xterm-viewport to #000, and xterm 6 applies the theme background only to the scrollable element that spans the rows. Rows rarely fill the pane exactly, so the leftover strip (up to one row high) below the last row showed as a black bar. Give the viewport the same --tempest-bg-editor color the terminal theme uses. Co-Authored-By: Claude Opus 5.5 --- src/components/TerminalPane.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/components/TerminalPane.css b/src/components/TerminalPane.css index 57444cb..7c46b33 100644 --- a/src/components/TerminalPane.css +++ b/src/components/TerminalPane.css @@ -59,6 +59,10 @@ height: 100%; } +.terminal-pane .xterm .xterm-viewport { + background-color: var(--tempest-bg-editor); +} + /* Hide the native browser scrollbar — xterm renders its own Monaco-style DOM scrollbar on top */ .terminal-pane .xterm-viewport { scrollbar-width: none !important;