[PR #9571] Prevent tab context menu from closing root pane directly #27634

Open
opened 2026-01-31 09:23:10 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/9571

State: closed
Merged: Yes


Summary of the Pull Request

Currently a repeated attempt to close a read-only tab from context menu,
will bring the terminal into invalid state if user dismisses close action.

There are two root causes for this:

  1. The tab close menu triggers the closing of the root pane
    (rather than invoking close tab flow in the Terminal Page).
  2. Currently panes are not aware that the closing was canceled,
    and thus they trigger the Closed event, putting the system in a weird state,
    where the Closed handlers were invoked, but the Pane remains.

This PR mitigates #9502, by addressing the first root cause
(the fix is trivial and hopefully can be serviced).
Moreover, it addresses the only existing UI flow that can trigger the issue.

The remaining problematic flow will occur when the connection is closed.
I have created a separate Issue to track it:
https://github.com/microsoft/terminal/issues/9572
as I guess the PR for it might be more complex.

PR Checklist

**Original Pull Request:** https://github.com/microsoft/terminal/pull/9571 **State:** closed **Merged:** Yes --- ## Summary of the Pull Request Currently a repeated attempt to close a read-only tab from context menu, will bring the terminal into invalid state if user dismisses close action. There are two root causes for this: 1. The tab close menu triggers the closing of the root pane (rather than invoking close tab flow in the Terminal Page). 2. Currently panes are not aware that the closing was canceled, and thus they trigger the Closed event, putting the system in a weird state, where the Closed handlers were invoked, but the Pane remains. This PR mitigates #9502, by addressing the first root cause (the fix is trivial and hopefully can be serviced). Moreover, it addresses the only existing UI flow that can trigger the issue. The remaining problematic flow will occur when the connection is closed. I have created a separate Issue to track it: https://github.com/microsoft/terminal/issues/9572 as I guess the PR for it might be more complex. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [x] Closes https://github.com/microsoft/terminal/issues/9502 * [x] CLA signed. * [ ] Tests added/passed * [ ] Documentation updated. * [ ] Schema updated. * [ ] I've discussed this with core contributors already.
claunia added the pull-request label 2026-01-31 09:23:10 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#27634