-
feat: RDP dynamic resize on window resize (MobaXTerm-style)
All checks were successfulBuild & Sign Wraith / Build Windows + Sign (push) Successful in 3m59sreleased this
2026-03-30 14:44:43 +00:00 | 12 commits to main since this releaseWhen 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
Downloads