summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--limox.go6
-rw-r--r--xmpp/iq.go5
2 files changed, 6 insertions, 5 deletions
diff --git a/limox.go b/limox.go
index d1cbd79..040eef2 100644
--- a/limox.go
+++ b/limox.go
@@ -27,6 +27,7 @@ type Limox struct {
PwdEditor widget.Editor
ConnectButton widget.Clickable
DisconnectButton widget.Clickable
+ Roster []xmpp.RosterItem
sessionIn chan<- any
sessionOut chan any
State LimoxState
@@ -70,11 +71,14 @@ func (l *Limox) run() error {
l.draw(e)
}
case data := <-l.sessionOut:
- switch data.(type) {
+ switch d := data.(type) {
case xmpp.SessionDisconnect:
l.State = Disconnected
+ l.Roster = make([]xmpp.RosterItem, 0)
case xmpp.SessionConnect:
l.State = Connected
+ case []xmpp.RosterItem:
+ l.Roster = d
default:
log.Printf("Unknown XMPP data '%d'\n", data)
}
diff --git a/xmpp/iq.go b/xmpp/iq.go
index 1cb7fd5..8683a21 100644
--- a/xmpp/iq.go
+++ b/xmpp/iq.go
@@ -32,10 +32,7 @@ func (i iqRx) handle(s *session) {
}
if len(i.Query) > 0 {
- log.Println("Got roster:")
- for _, v := range i.Query {
- log.Printf("- %s\n", v.Jid)
- }
+ s.out <- i.Query
}
}