diff options
Diffstat (limited to 'internal/ui/ui.go')
| -rw-r--r-- | internal/ui/ui.go | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/internal/ui/ui.go b/internal/ui/ui.go deleted file mode 100644 index 244c191..0000000 --- a/internal/ui/ui.go +++ /dev/null @@ -1,47 +0,0 @@ -package ui - -import ( - "github.com/charmbracelet/bubbles/list" - tea "github.com/charmbracelet/bubbletea" -) - -// Model wraps a Bubble Tea list.Model to display tasks. -type Model struct { - list list.Model -} - -// New creates a new UI model with the provided Bubble Tea list. -func New(l list.Model) Model { - return Model{list: l} -} - -// Init implements tea.Model. -func (m Model) Init() tea.Cmd { return nil } - -// Update handles key and window events. -func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { - switch msg := msg.(type) { - case tea.KeyMsg: - switch msg.String() { - case "j": - msg = tea.KeyMsg{Type: tea.KeyDown} - case "k": - msg = tea.KeyMsg{Type: tea.KeyUp} - } - return m.updateList(msg) - case tea.WindowSizeMsg: - m.list.SetSize(msg.Width, msg.Height-2) - } - return m.updateList(msg) -} - -func (m *Model) updateList(msg tea.Msg) (tea.Model, tea.Cmd) { - var cmd tea.Cmd - m.list, cmd = m.list.Update(msg) - return m, cmd -} - -// View renders the list UI. -func (m Model) View() string { - return m.list.View() -} |
