Skip to content

Replace confirmCloseAllTabs with confirmOnClose#20055

Open
carlos-zamora wants to merge 1 commit intomainfrom
dev/cazamor/confirmOnClose
Open

Replace confirmCloseAllTabs with confirmOnClose#20055
carlos-zamora wants to merge 1 commit intomainfrom
dev/cazamor/confirmOnClose

Conversation

@carlos-zamora
Copy link
Copy Markdown
Member

@carlos-zamora carlos-zamora commented Apr 3, 2026

Summary of the Pull Request

Replaces the warning.confirmCloseAllTabs setting with a warning.confirmOnClose enum setting that accepts the following:

  • never: don't present a warning dialog when closing a session
  • automatic: present a warning dialog when closing multiple tabs/panes at once
  • always: present a warning dialog when closing any session

The confirmation dialog contains a "don't ask me again" checkbox. When checked, we update the setting to never.

This setting also affects the following actions:

  • "close other tabs"
  • "close tabs after"
  • "close other panes"
  • "quit"
    The appropriate confirmation dialog is shown in these scenarios. We also present an aggregate dialog instead of prompting the user once per tab/pane. If there are no other tabs/panes, we don't present a dialog and treat the key binding as unhandled (passing the key through).

References and Relevant Issues

Iteration of #19944

Validation Steps Performed

  • closing a tab:
    • ✅ 1 pane --> no dialog
    • ✅ 2 panes --> dialog
    • ✅ action and middle clicking tab trigger same flow
  • close all other tabs:
    • ✅ no other tabs --> no dialog
    • ✅ 1 other tab --> dialog
  • close all other panes:
    • ✅ 1 pane --> no dialog
    • ✅ 2 panes --> dialog
  • close all tabs after the current tab:
    • ✅ no tabs after --> no dialog (even if tabs before)
    • ✅ 1 tab after --> dialog
  • close window:
    • ✅ 2 tabs --> dialog
    • ✅ 2 panes --> dialog
    • ✅ 1 tab with one pane --> no dialog
  • Quit the Terminal:
    • ✅ 3 windows --> dialog
    • ✅1 window --> dialog
  • ✅ "don't ask me again" checkbox checked --> setting changed to "never"
  • ✅ "never" --> no dialog for scenarios above
  • ✅ "always" --> dialog always appears, even when closing a single pane

PR Checklist

Closes #5301
Closes #6641
"don't ask me again" checkbox is also mentioned in #10000

Co-authored by @zadjii-msft

@microsoft-github-policy-service microsoft-github-policy-service bot added Issue-Task It's a feature request, but it doesn't really need a major design. Area-UserInterface Issues pertaining to the user interface of the Console or Terminal Priority-2 A description (P2) Product-Terminal The new Windows Terminal. labels Apr 3, 2026
@carlos-zamora
Copy link
Copy Markdown
Member Author

carlos-zamora commented Apr 3, 2026

Demo

Settings UI:
settings UI exposure

Dialog UI:
dialog UI

Here's all the possible strings for the dialog:
image

@Hlsgs
Copy link
Copy Markdown

Hlsgs commented Apr 3, 2026

Apologies if this is not the proper place for this question: is it possible to implement a fourth setting that would mean "present a warning dialog when closing multiple tabs/panes at once AND at least one background tab is in Running State"?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area-UserInterface Issues pertaining to the user interface of the Console or Terminal Issue-Task It's a feature request, but it doesn't really need a major design. Priority-2 A description (P2) Product-Terminal The new Windows Terminal. zBugBash-Consider

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a "remember my decision" checkbox to our confirmation dialogs closeTab should present a confirmation dialog

2 participants