From 4e90179c2c72f6c73f1db302b24bfa0cf75aada7 Mon Sep 17 00:00:00 2001 From: xengineering Date: Sun, 9 Jul 2023 16:26:52 +0200 Subject: Introduce separate disconnect button This prepares the roster view which should contain the disconnect button. The now added button will be moved to this view as soon as it is created. --- limox.go | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'limox.go') diff --git a/limox.go b/limox.go index 4914ff5..d1cbd79 100644 --- a/limox.go +++ b/limox.go @@ -26,6 +26,7 @@ type Limox struct { JidEditor widget.Editor PwdEditor widget.Editor ConnectButton widget.Clickable + DisconnectButton widget.Clickable sessionIn chan<- any sessionOut chan any State LimoxState @@ -63,6 +64,9 @@ func (l *Limox) run() error { if l.ConnectButton.Clicked() { l.connectCallback() } + if l.DisconnectButton.Clicked() { + l.disconnectCallback() + } l.draw(e) } case data := <-l.sessionOut: @@ -97,3 +101,9 @@ func (l *Limox) connectCallback() { l.State = Disconnected } } + +func (l *Limox) disconnectCallback() { + c := l.sessionIn + go func() { c <- xmpp.SessionShouldDisconnect{} }() + l.State = Disconnected +} -- cgit v1.2.3-70-g09d2