v1.12.3

Ghost
Mon, 30 Mar 2026 16:14:02 +0000

Cursor blink + selection (ROOT CAUSE FOUND):

xterm.js v6 uses DOM renderer, not canvas. Cursor blink and selection
both require CSS focus classes set by the hidden textarea's focus event.

WKWebView doesn't focus elements with opacity:0, width:0, height:0,
left:-9999em — the textarea never receives focus, classes never toggle.

Fix: Override .xterm-helper-textarea to left:0, top:0, width:1px,
height:1px, opacity:0.01 — within viewport, non-zero, focusable.

Theme restoration on startup:

sessionStore.activeTheme started as null on every launch

ThemePicker saved active_theme to settings but nobody restored it

Added theme restoration to MainLayout onMounted — reads active_theme
setting, fetches theme from backend, calls setTheme() before any
terminals open

Status bar:

h-10 (40px) to match toolbar height for visual balance

Selection colors:

Solid #264f78 (VS Code selection blue) instead of rgba transparency

Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com