on main help sign in
Merge pull request #26 from charmbracelet/andrey/charm-59-make-prompt-have-context-of-crush-itself-exit-or-quit-should

feat: open exit dialog on typing `exit` or `quit`

commit88a0420fad4a6f038175c0ace845f1ee22f8aab4 authorKujtim Hoxha <kujtimii.h@gmail.com> dateSat 14 Jun 2025, 09:01 (1 year ago) parentfecea6e62e3626
1 file changed+10
internal/tui/components/chat/editor/editor.go+10
internal/tui/components/chat/editor/editor.go+10
@@ -18,7 +18,9 @@ import (
1818 "github.com/charmbracelet/crush/internal/session"
1919 "github.com/charmbracelet/crush/internal/tui/components/chat"
2020 "github.com/charmbracelet/crush/internal/tui/components/completions"
21+ "github.com/charmbracelet/crush/internal/tui/components/dialogs"
2122 "github.com/charmbracelet/crush/internal/tui/components/dialogs/filepicker"
23+ "github.com/charmbracelet/crush/internal/tui/components/dialogs/quit"
2224 "github.com/charmbracelet/crush/internal/tui/layout"
2325 "github.com/charmbracelet/crush/internal/tui/styles"
2426 "github.com/charmbracelet/crush/internal/tui/util"
@@ -118,6 +120,14 @@ func (m *editorCmp) send() tea.Cmd {
118120 }
119121
120122 value := m.textarea.Value()
123+ value = strings.TrimSpace(value)
124+
125+ switch value {
126+ case "exit", "quit":
127+ m.textarea.Reset()
128+ return util.CmdHandler(dialogs.OpenDialogMsg{Model: quit.NewQuitDialog()})
129+ }
130+
121131 m.textarea.Reset()
122132 attachments := m.attachments
123133