diff options
Diffstat (limited to 'limox.go')
-rw-r--r-- | limox.go | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -26,6 +26,7 @@ type Limox struct { JidEditor widget.Editor PwdEditor widget.Editor MainButton widget.Clickable + session *xmpp.Session XmppConn chan xmpp.Event State LimoxState Window *app.Window @@ -85,13 +86,15 @@ func (l *Limox) buttonCallback() { pwd := l.PwdEditor.Text() setLastJid(jid) setLastPwd(pwd) - c := xmpp.NewConn(l.XmppConn, jid, pwd) - go c.Run() + l.session = xmpp.NewSession(jid, pwd) + l.XmppConn = l.session.Out + go l.session.Run() l.State = Connecting case Connecting: + l.session.Close() l.State = Disconnected case Connected: - l.XmppConn <- xmpp.ShouldDisconnectEvent + l.session.Close() l.State = Disconnected } } |