File tree Expand file tree Collapse file tree 1 file changed +8
-0
lines changed
pkg/tui/components/completion Expand file tree Collapse file tree 1 file changed +8
-0
lines changed Original file line number Diff line number Diff line change @@ -236,16 +236,24 @@ func (c *manager) Update(msg tea.Msg) (layout.Model, tea.Cmd) {
236236 case key .Matches (msg , c .keyMap .Up ):
237237 if c .selected > 0 {
238238 c .selected --
239+ } else if len (c .filteredItems ) > 0 {
240+ c .selected = len (c .filteredItems ) - 1
239241 }
240242 if c .selected < c .scrollOffset {
241243 c .scrollOffset = c .selected
242244 }
245+ if c .selected >= c .scrollOffset + maxItems {
246+ c .scrollOffset = c .selected - maxItems + 1
247+ }
243248 cmd := c .notifySelectionChanged ()
244249 return c , cmd
245250
246251 case key .Matches (msg , c .keyMap .Down ):
247252 if c .selected < len (c .filteredItems )- 1 {
248253 c .selected ++
254+ } else if len (c .filteredItems ) > 0 {
255+ c .selected = 0
256+ c .scrollOffset = 0
249257 }
250258 if c .selected >= c .scrollOffset + maxItems {
251259 c .scrollOffset = c .selected - maxItems + 1
You can’t perform that action at this time.
0 commit comments