caadd59441
Move the following audited-and-implemented changes into openspec/changes/archive/2026-06-12-completed-changes-archive/: - backend-frontend-refactoring - config-profile-git-mounts - config-profile-includes-ui - config-profile-multi-repo-mounts - container-monitoring-notifications - git-mount-url-validation - home-path-expansion - mobile-terminal-ux - mount-specificity-ordering - notification-center - persistent-terminal-sessions - session-list-overhaul - ssh-key-mounting - terminal-fullscreen-unified-header - tool-session-progress-and-updates Also regenerated .pi-map*.md files for openspec/changes so the remaining active changes (multi-session-terminal-ux, reorganize-long-files, working-copies, workspace-first-ui) reflect the new layout.
1.9 KiB
1.9 KiB
Why
Terminal sessions are currently desktop-optimized and become practically unusable on mobile devices due to virtual keyboard conflicts, lack of touch gestures, missing special keys, and poor screen utilization. Users occasionally need to access terminal sessions from mobile devices to check logs, run quick commands, or monitor running processes, but the current experience is frustrating.
What Changes
- Mobile terminal page layout: Fullscreen terminal experience with collapsible AppShell chrome on mobile viewports
- Special keys toolbar: Bottom-accessible strip with Esc, Tab, Ctrl, Alt, Arrow keys, and an expandable "More" panel with Home/End/PgUp/PgDn/Ctrl+C/etc
- Dynamic viewport handling: Resize terminal container based on virtual keyboard presence using
visualViewportAPI - Touch gesture support: Disable browser zoom, intercept touch events for terminal interaction
- Auto-hiding chrome: Header and special keys strip auto-hide after inactivity, tap/swipe to reveal
- Orientation handling: Debounced resize for screen rotation
- Font scaling: Responsive font size based on viewport dimensions
Capabilities
New Capabilities
mobile-terminal-ux: Mobile-optimized terminal interface with special keys, dynamic sizing, and touch-friendly interactions
Modified Capabilities
tool-terminal: Add mobile-specific requirements for terminal resize, touch handling, and virtual keyboard awarenessfrontend-foundation: Add mobile layout behavior for terminal pages (collapsible AppShell, fullscreen mode)
Impact
- Frontend: New components (
MobileTerminalHeader,SpecialKeysStrip,useMobileViewporthook), modifications toterminal.tsx,terminal-page.tsx,app-shell.tsx - Styles: New mobile terminal CSS, touch-action overrides
- Dependencies: No new dependencies (uses existing xterm.js, React)
- Browser support: Requires
visualViewportAPI (modern browsers) - Breaking: None