Self-hosted SSH + SFTP + RDP in a browser — MobaXterm replacement
Go to file
Vantz Stockwell 09c2f1a1ff
All checks were successful
Build & Sign Wraith / Build Windows + Sign (push) Successful in 3m59s
feat: RDP dynamic resize on window resize (MobaXTerm-style)
When the Wraith window is resized, the RDP session now resizes to fill
the entire canvas area — matching MobaXTerm behavior.

Implementation:
- Enabled ironrdp displaycontrol feature for Display Control Virtual Channel
- Added Resize input event to RDP session thread
- ActiveStage::encode_resize() sends monitor layout PDU to server
- Server re-renders at new resolution and sends updated frames
- Frontend ResizeObserver on canvas wrapper, debounced 500ms
- Canvas CSS changed from max-width/max-height to width/height: 100%
- Mouse coordinate mapping uses canvas.width/height (actual resolution)
  instead of initial rdpWidth/rdpHeight
- Image and front buffer reallocated on resize to match new dimensions
- Width constrained to even numbers per RDP spec, min 200px

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-30 10:44:43 -04:00
.gitea/workflows feat: migrate all artifacts to SeaweedFS — single source of truth 2026-03-26 15:52:10 -04:00
docs feat: MCP Phase 1 — scrollback buffer, terminal_read, terminal_execute 2026-03-24 23:00:32 -04:00
src feat: RDP dynamic resize on window resize (MobaXTerm-style) 2026-03-30 10:44:43 -04:00
src-tauri feat: RDP dynamic resize on window resize (MobaXTerm-style) 2026-03-30 10:44:43 -04:00
.gitignore chore: ignore worktree directories 2026-03-29 16:41:51 -04:00
AGENTS.md docs: rename Go reference from ../wraith to ../wraith-go-archive 2026-03-24 22:54:22 -04:00
CLAUDE.md feat: MCP Phase 1 — scrollback buffer, terminal_read, terminal_execute 2026-03-24 23:00:32 -04:00
index.html feat: Phase 1 complete — Tauri v2 foundation 2026-03-17 15:09:41 -04:00
package-lock.json feat: Tauri auto-updater + RDP vault credentials + sidebar persist 2026-03-25 12:42:01 -04:00
package.json feat: Tauri auto-updater + RDP vault credentials + sidebar persist 2026-03-25 12:42:01 -04:00
tsconfig.json feat: Phase 1 complete — Tauri v2 foundation 2026-03-17 15:09:41 -04:00
tsconfig.node.json feat: Phase 1 complete — Tauri v2 foundation 2026-03-17 15:09:41 -04:00
vite.config.ts feat: Phase 1 complete — Tauri v2 foundation 2026-03-17 15:09:41 -04:00