on main help sign in
chore: add suspend
39f0772Kujtim Hoxha
internal/tui/keys.go+5
@@ -8,6 +8,7 @@ type KeyMap struct {
8 Quit key.Binding
8 Quit key.Binding
9 Help key.Binding
9 Help key.Binding
10 Commands key.Binding
10 Commands key.Binding
11+ Suspend key.Binding
11 Sessions key.Binding
12 Sessions key.Binding
12
13
13 pageBindings []key.Binding
14 pageBindings []key.Binding
@@ -27,6 +28,10 @@ func DefaultKeyMap() KeyMap {
27 key.WithKeys("ctrl+p"),
28 key.WithKeys("ctrl+p"),
28 key.WithHelp("ctrl+p", "commands"),
29 key.WithHelp("ctrl+p", "commands"),
29 ),
30 ),
31+ Suspend: key.NewBinding(
32+ key.WithKeys("ctrl+z"),
33+ key.WithHelp("ctrl+z", "suspend"),
34+ ),
30 Sessions: key.NewBinding(
35 Sessions: key.NewBinding(
31 key.WithKeys("ctrl+s"),
36 key.WithKeys("ctrl+s"),
32 key.WithHelp("ctrl+s", "sessions"),
37 key.WithHelp("ctrl+s", "sessions"),
internal/tui/tui.go+5
@@ -375,6 +375,11 @@ func (a *appModel) handleKeyPressMsg(msg tea.KeyPressMsg) tea.Cmd {
375 },
375 },
376 )
376 )
377 return tea.Sequence(cmds...)
377 return tea.Sequence(cmds...)
378+ case key.Matches(msg, a.keyMap.Suspend):
379+ if a.app.CoderAgent.IsBusy() {
380+ return util.ReportWarn("Agent is busy, please wait...")
381+ }
382+ return tea.Suspend
378 default:
383 default:
379 if a.dialog.HasDialogs() {
384 if a.dialog.HasDialogs() {
380 u, dialogCmd := a.dialog.Update(msg)
385 u, dialogCmd := a.dialog.Update(msg)