xcvr tui

scroll down when at bottom

+16
+16
main.go
··· 396 if msg.Init.Echoed != nil && *msg.Init.Echoed { 397 m.myid = msg.Init.Id 398 } 399 m.vp.SetContent(JoinDeref(m.renders, "")) 400 return m, nil 401 case *lrcpb.Event_Pub: 402 err := pubMessage(msg.Pub, m.msgs, m.width) ··· 414 m.error = &err 415 return m, nil 416 } 417 m.vp.SetContent(JoinDeref(m.renders, "")) 418 return m, nil 419 case *lrcpb.Event_Delete: 420 err := deleteMessage(msg.Delete, m.msgs, &m.renders, m.width) ··· 423 m.error = &err 424 return m, nil 425 } 426 m.vp.SetContent(JoinDeref(m.renders, "")) 427 return m, nil 428 case *lrcpb.Event_Mute: 429 return m, nil ··· 446 m.error = &err 447 return m, nil 448 } 449 m.vp.SetContent(JoinDeref(m.renders, "")) 450 return m, nil 451 } 452 case tea.KeyMsg:
··· 396 if msg.Init.Echoed != nil && *msg.Init.Echoed { 397 m.myid = msg.Init.Id 398 } 399 + ab := m.vp.AtBottom() 400 m.vp.SetContent(JoinDeref(m.renders, "")) 401 + if ab { 402 + m.vp.GotoBottom() 403 + } 404 return m, nil 405 case *lrcpb.Event_Pub: 406 err := pubMessage(msg.Pub, m.msgs, m.width) ··· 418 m.error = &err 419 return m, nil 420 } 421 + ab := m.vp.AtBottom() 422 m.vp.SetContent(JoinDeref(m.renders, "")) 423 + if ab { 424 + m.vp.GotoBottom() 425 + } 426 return m, nil 427 case *lrcpb.Event_Delete: 428 err := deleteMessage(msg.Delete, m.msgs, &m.renders, m.width) ··· 431 m.error = &err 432 return m, nil 433 } 434 + ab := m.vp.AtBottom() 435 m.vp.SetContent(JoinDeref(m.renders, "")) 436 + if ab { 437 + m.vp.GotoBottom() 438 + } 439 return m, nil 440 case *lrcpb.Event_Mute: 441 return m, nil ··· 458 m.error = &err 459 return m, nil 460 } 461 + ab := m.vp.AtBottom() 462 m.vp.SetContent(JoinDeref(m.renders, "")) 463 + if ab { 464 + m.vp.GotoBottom() 465 + } 466 return m, nil 467 } 468 case tea.KeyMsg: