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