Skip to content

Fix TermControl engine and PTY size divergence during startup - #46

Merged
Marc-André Moreau (mamoreau-devolutions) merged 2 commits into
masterfrom
copilot/fix-termcontrol-pty-size-sync
Sep 26, 2026
Merged

Marc-André Moreau (mamoreau-devolutions) merged 2 commits into
masterfrom
copilot/fix-termcontrol-pty-size-sync

Conversation

@mamoreau-devolutions

Copy link
Copy Markdown
Contributor

Closes #43.

  • Discard stale pre-start layout resize requests so the StartAsync grid remains authoritative until a fresh layout pass.
  • Retain and apply the latest resize after startup or restart, including PTY pixel dimensions; clear pending resize on close or startup failure.
  • Add headless regressions covering startup, restart, failed startup, and close; document the startup sizing contract for embedders.

Validation: dotnet test tests\Devolutions.Terminal.Control.Tests\Devolutions.Terminal.Control.Tests.csproj -c Debug --no-restore --nologo -v minimal (148 passed, 0 failed).

Discard stale pre-start layout resizes, flush deferred resizes after startup and restart, and cover the lifecycle with headless regression tests.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Use explicit arrange passes instead of window-driven layout so startup and close timing assertions remain deterministic on CI runners.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@mamoreau-devolutions
Marc-André Moreau (mamoreau-devolutions) merged commit 39d8b90 into master Sep 26, 2026
53 of 54 checks passed
@mamoreau-devolutions
Marc-André Moreau (mamoreau-devolutions) deleted the copilot/fix-termcontrol-pty-size-sync branch September 26, 2026 00:06

This branch was successfully deployed

1 active deployment
publish-dry-run — 2e86341e Deployed Sep 25, 2026 by mamoreau-devolutions via MSI packages #275
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

TermControl: engine and PTY sizes diverge when StartAsync size differs from the pre-start layout grid

1 participant