Change summary
internal/config/config.go | 1 +
internal/tui/tui.go | 6 ++++++
2 files changed, 7 insertions(+)
Detailed changes
@@ -167,6 +167,7 @@ type Options struct {
DisableProviderAutoUpdate bool `json:"disable_provider_auto_update,omitempty" jsonschema:"description=Disable providers auto-update,default=false"`
Attribution *Attribution `json:"attribution,omitempty" jsonschema:"description=Attribution settings for generated content"`
DisableMetrics bool `json:"disable_metrics,omitempty" jsonschema:"description=Disable sending metrics,default=false"`
+ DisableExitConfirmation bool `json:"disable_exit_confirmation,omitempty" jsonschema:"description=Disable exit confirmation dialog,default=false"`
}
type MCPs map[string]MCPConfig
@@ -180,6 +180,9 @@ func (a *appModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
Model: compact.NewCompactDialogCmp(a.app.CoderAgent, msg.SessionID, true),
})
case commands.QuitMsg:
+ if a.app.Config().Options.DisableExitConfirmation {
+ return a, tea.Quit
+ }
return a, util.CmdHandler(dialogs.OpenDialogMsg{
Model: quit.NewQuitDialog(),
})
@@ -400,6 +403,9 @@ func (a *appModel) handleKeyPressMsg(msg tea.KeyPressMsg) tea.Cmd {
if a.dialog.ActiveDialogID() == quit.QuitDialogID {
return tea.Quit
}
+ if a.app.Config().Options.DisableExitConfirmation {
+ return tea.Quit
+ }
return util.CmdHandler(dialogs.OpenDialogMsg{
Model: quit.NewQuitDialog(),
})