Skip to content

Commit ae1f23f

Browse files
committed
Don't open command completions if the editor already has text in it
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
1 parent e67169b commit ae1f23f

4 files changed

Lines changed: 12 additions & 0 deletions

File tree

pkg/tui/components/editor/completions/command.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@ func (c *commandCompletion) AutoSubmit() bool {
2222
return true
2323
}
2424

25+
func (c *commandCompletion) RequiresEmptyEditor() bool {
26+
return true
27+
}
28+
2529
func (c *commandCompletion) Trigger() string {
2630
return "/"
2731
}

pkg/tui/components/editor/completions/completion.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ type Completion interface {
99
Trigger() string
1010
Items() []completion.Item
1111
AutoSubmit() bool
12+
RequiresEmptyEditor() bool
1213
}
1314

1415
func Completions(a *app.App) []Completion {

pkg/tui/components/editor/completions/file.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ func (c *fileCompletion) AutoSubmit() bool {
1515
return false
1616
}
1717

18+
func (c *fileCompletion) RequiresEmptyEditor() bool {
19+
return false
20+
}
21+
1822
func (c *fileCompletion) Trigger() string {
1923
return "@"
2024
}

pkg/tui/components/editor/editor.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,9 @@ func (e *editor) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
144144
default:
145145
for _, completion := range e.completions {
146146
if msg.String() == completion.Trigger() {
147+
if completion.RequiresEmptyEditor() && e.textarea.Value() != "" {
148+
continue
149+
}
147150
cmds = append(cmds, e.startCompletion(completion))
148151
}
149152
}

0 commit comments

Comments
 (0)