feat: shortcuts to get around pages

This commit is contained in:
2025-06-01 15:29:56 +01:00
parent a85087b444
commit 159cdc14a0

18
main.go
View File

@ -112,8 +112,8 @@ func initialModel() model {
panic(err)
}
list := list.New(listItems, list.NewDefaultDelegate(), w, h)
list.Title = "Blog Posts"
list := list.New(listItems, list.NewDefaultDelegate(), w, h-4)
list.SetShowTitle(false)
// -1 to allow for the initial height of the nav model
vp := getViewPort(w, h-3)
@ -171,6 +171,18 @@ func (m model) Init() tea.Cmd {
}
func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
switch msg := msg.(type) {
case tea.KeyMsg:
switch msg.String() {
case "h":
m.page = FRONT
return m, nil
case "b":
m.page = POST_LIST
return m, nil
}
}
switch m.page {
case FRONT:
updatedFrontPageModel, cmd := m.frontPageModel.Update(msg)
@ -240,7 +252,7 @@ func (m model) View() string {
case POST_LIST:
return m.navModel.View() + docStyle.Render(m.list.View())
case POST:
return m.navModel.View() + m.postModel.View()
return m.navModel.View() + "\n" + m.postModel.View()
default:
panic("unreachable")
}