diff --git a/src/frontend/styles.css b/src/frontend/styles.css index 06f01bc..48a99b7 100644 --- a/src/frontend/styles.css +++ b/src/frontend/styles.css @@ -2749,10 +2749,15 @@ body { /* ── Changelog ──────────────────────────────────────────────── */ /* ── Workspace (browser terminal) ──────────────────────────── */ +/* Terminal fills the content area edge-to-edge (drop the dashboard's 20px + padding + scroll only when the workspace is mounted). */ +.content:has(.workspace-wrap) { padding: 0; overflow: hidden; } .workspace-wrap { display: flex; flex-direction: column; - height: calc(100vh - 52px); + height: 100%; + min-height: 0; + overflow: hidden; } .workspace-bar { display: flex; @@ -2764,7 +2769,15 @@ body { } .workspace-title { font-weight: 600; color: var(--text-primary); font-size: 13px; } .ws-layouts { display: flex; gap: 4px; } -.ws-layouts .toolbar-btn { min-width: 34px; letter-spacing: 1px; } +.ws-layout-btn { + display: inline-flex; + align-items: center; + justify-content: center; + padding: 6px 8px; + color: var(--text-secondary); +} +.ws-layout-btn.active { color: var(--accent-blue); border-color: var(--accent-blue); } +.ws-layout-btn svg { display: block; } .workspace-hint { font-size: 11px; color: var(--text-muted); } /* ── Tab bar (iTerm-like) ── */ diff --git a/src/frontend/workspace.js b/src/frontend/workspace.js index 15d7d78..bfd620a 100644 --- a/src/frontend/workspace.js +++ b/src/frontend/workspace.js @@ -14,6 +14,13 @@ var MAX_WS_PANES = 4; +// Split-layout icons (glyph chars like ▯ render as tofu in many fonts). +var _WS_SVG = 'width="15" height="15" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.3"'; +var _WS_ICON_1 = ''; +var _WS_ICON_2 = ''; +var _WS_ICON_3 = ''; +var _WS_ICON_4 = ''; + var WORKSPACE_AGENTS = [ { label: 'Claude Code', cmd: 'claude' }, { label: 'Codex', cmd: 'codex' }, @@ -353,10 +360,10 @@ async function renderWorkspace(container) { '
' + '