| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package chat
- import (
- "log/slog"
- "github.com/ayn2op/tview"
- "github.com/gdamore/tcell/v3"
- )
- type LogoutEvent struct{ tcell.EventTime }
- func (v *Model) logout() tview.Command {
- return func() tcell.Event {
- event := &LogoutEvent{}
- event.SetEventNow()
- return event
- }
- }
- type QuitEvent struct{ tcell.EventTime }
- func NewQuitEvent() *QuitEvent {
- event := &QuitEvent{}
- event.SetEventNow()
- return event
- }
- func (v *Model) closeState() tview.Command {
- return func() tcell.Event {
- if err := v.CloseState(); err != nil {
- slog.Error("failed to close the session", "err", err)
- return tcell.NewEventError(err)
- }
- return nil
- }
- }
- type closeLayerEvent struct {
- tcell.EventTime
- name string
- }
- func closeLayer(name string) tview.Command {
- return func() tcell.Event {
- event := &closeLayerEvent{name: name}
- event.SetEventNow()
- return event
- }
- }
|