From d2b9f9843fbad34698786d8c1d281fd339fdaa8c Mon Sep 17 00:00:00 2001 From: sunglocto Date: Wed, 27 Aug 2025 12:02:38 +0100 Subject: [PATCH] Some changes --- main.go | 57 ++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 46 insertions(+), 11 deletions(-) diff --git a/main.go b/main.go index 0ace123..d3b58c0 100644 --- a/main.go +++ b/main.go @@ -26,11 +26,12 @@ import ( "github.com/rrivera/identicon" // xmpp - required - "mellium.im/xmpp/disco" + _ "mellium.im/xmpp/disco" "mellium.im/xmpp/jid" "mellium.im/xmpp/muc" + "mellium.im/xmpp/stanza" + _ "mellium.im/xmpp/stanza" oasisSdk "pain.agency/oasis-sdk" - // gui - optional // catppuccin "github.com/mbaklor/fyne-catppuccin" // TODO: integrated theme switcher @@ -945,27 +946,61 @@ func main() { }) servDisc := fyne.NewMenuItem("Disco features", func() { - var search jid.JID - dialog.ShowEntryDialog("Disco features", "JID: ", func(s string) { // TODO: replace with undeprecated widget - search, err = jid.Parse(s) + //var search jid.JID + dialog.ShowEntryDialog("Disco features", "JID: ", func(s string) { // TODO: replace with undeprecated widgetd + d := dialog.NewCustom("Please wait", "Close", widget.NewLabel("..."), w) + d.Show() + go func() { + //search, err = jid.Parse(s) + //if err != nil { + // d.Hide() + // dialog.ShowError(err, w) + // return + //} + txt := ` + +` + var stan stanza.IQ + xml.Unmarshal([]byte(txt), &stan) if err != nil { + d.Hide() dialog.ShowError(err, w) return } + r, err := client.Session.EncodeIQ(client.Ctx, stan) + if err != nil { + d.Hide() + dialog.ShowError(err, w) + return + } + ra, _ := r.Token() + t, _ := xml.MarshalIndent(ra, "", "\t") + fmt.Println(string(t)) + d.Hide() + /* myBox := container.NewGridWithColumns(1, widget.NewLabel("Items")) info, err := disco.GetInfo(client.Ctx, "", search, client.Session) if err != nil { + d.Hide() dialog.ShowError(err, w) return } - m := info.Features - for _, v := range m { - myBox.Add(widget.NewLabel(v.Var)) - myBox.Refresh() + m := info.Identity + bytes, err := xml.MarshalIndent(m, "", "\t") + if err != nil { + d.Hide() + dialog.ShowError(err, w) + return } - - dialog.ShowCustom("Features", "cancel", myBox, w) + fyne.Do(func() {d.Hide()}) + myBox.Objects = append(myBox.Objects, widget.NewLabel(string(bytes))) + dialog.ShowCustom("Service discovery", "cancel", myBox, w) + */ + }() }, w) })