fix: resolve new tab creation failure and shortcut passthrough

- Fix pty.spawn cwd tilde expansion: ptyManager now passes resolvedCwd (expanding ~ and verifying directory existence) so child processes do not exit immediately on launch
- Add pointer-events: none to SVGs inside buttons and tabs to prevent Electron window-dragging interception
- Extend xterm attachCustomKeyEventHandler to allow Ctrl+Shift+T, Ctrl+Shift+W, etc. through while terminal is focused
- Wrap remote SSH and serial spawns with fallback to local bash to prevent tab death loops on connection failures
This commit is contained in:
2026-09-24 01:48:43 +08:00
parent ebf454a250
commit 4707817053
7 changed files with 85 additions and 13 deletions
+1
View File
@@ -54,6 +54,7 @@ class TerminalApp {
this.tabManager = new TabManager({
tabBar: this.tabBar,
viewport: this.viewport,
getSpawnOptions: (wsId) => (this.workspaceManager ? this.workspaceManager.getSpawnOptions(wsId) : {}),
onActiveChange: (activeTerm) => {
if (activeTerm && this.statusShell) {
this.statusShell.textContent = activeTerm.title || 'bash';