Skip to content

Commit baf4b46

Browse files
committed
move deleteSelectedBuffer method to buffer list package
1 parent 9fce156 commit baf4b46

3 files changed

Lines changed: 26 additions & 11 deletions

File tree

tui/components/buffer_list.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,26 @@ func (l *BufferList) createListItem(buf *Buffer, index int) BufferListItem {
275275
return item
276276
}
277277

278+
func (l *BufferList) SelectedBuffer() *BufferListItem {
279+
var (
280+
items = l.Items()
281+
selectedItem = l.SelectedItem(items)
282+
lastBuffer = 0
283+
)
284+
285+
if len(items) <= 0 {
286+
return nil
287+
}
288+
289+
lastBuffer = items[len(items)-1].Index() - 1
290+
291+
if l.SelectedIndex() > lastBuffer {
292+
l.SetSelectedIndex(lastBuffer)
293+
}
294+
295+
return selectedItem
296+
}
297+
278298
func (l *BufferList) Items() []*BufferListItem {
279299
return l.items
280300
}

tui/keyinput/keymap.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@
6565
"k": "LineUp",
6666
"enter": "ConfirmAction",
6767
"esc": "CloseBufferList",
68-
"dd": "CloseSelectedNote",
68+
"D": "CloseSelectedNote",
6969
"gg": "GoToTop",
7070
"G": "GoToBottom"
7171
}

tui/vim/motions.go

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -499,17 +499,12 @@ func (v *Vim) cancelAction(opts ki.Options) func() StatusBarMsg {
499499

500500
func (v *Vim) deleteSelectedBuffer(_ ki.Options) func() StatusBarMsg {
501501
return func() StatusBarMsg {
502-
var (
503-
bl = v.app.BufferList
504-
items = bl.Items()
505-
selectedItem = bl.SelectedItem(items)
506-
lastBuffer = items[len(items)-1].Index() - 1
507-
)
508-
509-
v.app.Editor.DeleteBuffer(selectedItem.Path())
502+
if !v.app.BufferList.Focused() {
503+
return StatusBarMsg{}
504+
}
510505

511-
if bl.SelectedIndex() > lastBuffer {
512-
bl.SetSelectedIndex(lastBuffer)
506+
if buffer := v.app.BufferList.SelectedBuffer(); buffer != nil {
507+
v.app.Editor.DeleteBuffer(buffer.Path())
513508
}
514509

515510
return StatusBarMsg{}

0 commit comments

Comments
 (0)