diff options
author | xengineering <me@xengineering.eu> | 2023-07-09 16:26:52 +0200 |
---|---|---|
committer | xengineering <me@xengineering.eu> | 2023-07-09 16:26:52 +0200 |
commit | 4e90179c2c72f6c73f1db302b24bfa0cf75aada7 (patch) | |
tree | 90a7d18c3831bb054f5e739738574383bc73cd5f /limox.go | |
parent | ffd41bba908fecc617970cf101d9b63b1db28d40 (diff) | |
download | limox-4e90179c2c72f6c73f1db302b24bfa0cf75aada7.tar limox-4e90179c2c72f6c73f1db302b24bfa0cf75aada7.tar.zst limox-4e90179c2c72f6c73f1db302b24bfa0cf75aada7.zip |
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.
Diffstat (limited to 'limox.go')
-rw-r--r-- | limox.go | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -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 +} |