mirror of
https://github.com/agresdominik/cheat_sheet.git
synced 2026-04-21 18:05:51 +00:00
fixed not remembering which menu was selected beforhand and therefore the tui would not behave consistently
This commit is contained in:
@@ -30,6 +30,7 @@ type model struct {
|
||||
currentView view
|
||||
currentKey string
|
||||
selectedCmd string
|
||||
categoryIndex int
|
||||
}
|
||||
func (m model) Init() tea.Cmd { return nil }
|
||||
|
||||
@@ -48,10 +49,12 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
|
||||
selected, ok := m.list.SelectedItem().(item)
|
||||
if ok {
|
||||
if m.currentView == viewCategories {
|
||||
m.categoryIndex = m.list.Index()
|
||||
m.currentKey = selected.title
|
||||
m.currentView = viewCommands
|
||||
m.list.Title = m.currentKey
|
||||
m.list.SetItems(cmdItemsToList(m.commands.Get(m.currentKey)))
|
||||
m.list.Select(0)
|
||||
} else if m.currentView == viewCommands {
|
||||
m.selectedCmd = selected.title
|
||||
return m, tea.Quit
|
||||
@@ -64,6 +67,7 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
|
||||
m.currentView = viewCategories
|
||||
m.list.Title = "Choose a list of commands"
|
||||
m.list.SetItems(cmdListKeysToList(m.commands))
|
||||
m.list.Select(m.categoryIndex)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user