format code
This commit is contained in:
140
main.go
140
main.go
@@ -39,7 +39,7 @@ import (
|
|||||||
var version string = "3.1a"
|
var version string = "3.1a"
|
||||||
var statBar widget.Label
|
var statBar widget.Label
|
||||||
var chatInfo fyne.Container
|
var chatInfo fyne.Container
|
||||||
var chatSidebar fyne.Container
|
var chatSidebar fyne.Container
|
||||||
|
|
||||||
// by sunglocto
|
// by sunglocto
|
||||||
// license AGPL
|
// license AGPL
|
||||||
@@ -59,7 +59,7 @@ type MucTab struct {
|
|||||||
Messages []Message
|
Messages []Message
|
||||||
Scroller *widget.List
|
Scroller *widget.List
|
||||||
isMuc bool
|
isMuc bool
|
||||||
Muc *muc.Channel
|
Muc *muc.Channel
|
||||||
}
|
}
|
||||||
|
|
||||||
type piConfig struct {
|
type piConfig struct {
|
||||||
@@ -82,7 +82,7 @@ var connection bool = true
|
|||||||
type myTheme struct{}
|
type myTheme struct{}
|
||||||
|
|
||||||
func (m myTheme) Color(name fyne.ThemeColorName, variant fyne.ThemeVariant) color.Color {
|
func (m myTheme) Color(name fyne.ThemeColorName, variant fyne.ThemeVariant) color.Color {
|
||||||
return adwaita.AdwaitaTheme().Color(name, variant)
|
return adwaita.AdwaitaTheme().Color(name, variant)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m myTheme) Icon(name fyne.ThemeIconName) fyne.Resource {
|
func (m myTheme) Icon(name fyne.ThemeIconName) fyne.Resource {
|
||||||
@@ -436,29 +436,29 @@ func main() {
|
|||||||
log.Fatalln("Could not create client - " + err.Error())
|
log.Fatalln("Could not create client - " + err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
client.Session.Serve(xmpp.HandlerFunc(func(t xmlstream.TokenReadEncoder, start *xml.StartElement) error {
|
client.Session.Serve(xmpp.HandlerFunc(func(t xmlstream.TokenReadEncoder, start *xml.StartElement) error {
|
||||||
d := xml.NewTokenDecoder(t)
|
d := xml.NewTokenDecoder(t)
|
||||||
|
|
||||||
// Ignore anything that's not a message.
|
// Ignore anything that's not a message.
|
||||||
if start.Name.Local != "message" {
|
if start.Name.Local != "message" {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
msg := struct {
|
msg := struct {
|
||||||
stanza.Message
|
stanza.Message
|
||||||
Body string `xml:"body"`
|
Body string `xml:"body"`
|
||||||
}{}
|
}{}
|
||||||
err := d.DecodeElement(&msg, start)
|
err := d.DecodeElement(&msg, start)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if msg.Body != "" {
|
if msg.Body != "" {
|
||||||
log.Println("Got message: %q", msg.Body)
|
log.Println("Got message: %q", msg.Body)
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}))
|
}))
|
||||||
*/
|
*/
|
||||||
go func() {
|
go func() {
|
||||||
for connection {
|
for connection {
|
||||||
err = client.Connect()
|
err = client.Connect()
|
||||||
@@ -476,8 +476,6 @@ func main() {
|
|||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
a = app.New()
|
a = app.New()
|
||||||
a.Settings().SetTheme(myTheme{})
|
a.Settings().SetTheme(myTheme{})
|
||||||
w = a.NewWindow("pi")
|
w = a.NewWindow("pi")
|
||||||
@@ -538,13 +536,13 @@ func main() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
entry.SetText("")
|
entry.SetText("")
|
||||||
}
|
}
|
||||||
|
|
||||||
sendbtn := widget.NewButton("Send", SendCallback)
|
sendbtn := widget.NewButton("Send", SendCallback)
|
||||||
entry.OnSubmitted = func(s string) {
|
entry.OnSubmitted = func(s string) {
|
||||||
SendCallback()
|
SendCallback()
|
||||||
// i fucking hate fyne
|
// i fucking hate fyne
|
||||||
}
|
}
|
||||||
|
|
||||||
mit := fyne.NewMenuItem("about pi", func() {
|
mit := fyne.NewMenuItem("about pi", func() {
|
||||||
dialog.ShowInformation("about pi", fmt.Sprintf("the XMPP client from hell\n\npi is an experimental XMPP client\nwritten by Sunglocto in Go.\n\nVersion %s", version), w)
|
dialog.ShowInformation("about pi", fmt.Sprintf("the XMPP client from hell\n\npi is an experimental XMPP client\nwritten by Sunglocto in Go.\n\nVersion %s", version), w)
|
||||||
@@ -633,64 +631,64 @@ func main() {
|
|||||||
})*/
|
})*/
|
||||||
|
|
||||||
deb := fyne.NewMenuItem("DEBUG: Attempt to get MAM history from a user", func() {
|
deb := fyne.NewMenuItem("DEBUG: Attempt to get MAM history from a user", func() {
|
||||||
//res, err := history.Fetch(client.Ctx, history.Query{}, jid.MustParse("ringen@muc.isekai.rocks"), client.Session)
|
//res, err := history.Fetch(client.Ctx, history.Query{}, jid.MustParse("ringen@muc.isekai.rocks"), client.Session)
|
||||||
})
|
})
|
||||||
mic := fyne.NewMenuItem("upload a file", func() {
|
mic := fyne.NewMenuItem("upload a file", func() {
|
||||||
var link string
|
var link string
|
||||||
var toperr error
|
var toperr error
|
||||||
//var topreader fyne.URIReadCloser
|
//var topreader fyne.URIReadCloser
|
||||||
dialog.ShowFileOpen(func(reader fyne.URIReadCloser, err error) {
|
dialog.ShowFileOpen(func(reader fyne.URIReadCloser, err error) {
|
||||||
go func () {
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
dialog.ShowError(err, w)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if reader == nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
bytes, toperr = io.ReadAll(reader)
|
|
||||||
//topreader = reader
|
|
||||||
|
|
||||||
if toperr != nil {
|
|
||||||
dialog.ShowError(toperr, w)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
progress := make(chan oasisSdk.UploadProgress)
|
|
||||||
myprogressbar := widget.NewProgressBar()
|
|
||||||
diag := dialog.NewCustom("Uploading file", "Hide", myprogressbar, w)
|
|
||||||
diag.Show()
|
|
||||||
go func() {
|
go func() {
|
||||||
client.UploadFile(client.Ctx, reader.URI().Path(), progress)
|
|
||||||
}()
|
|
||||||
|
|
||||||
for update := range progress {
|
if err != nil {
|
||||||
fyne.Do(func() {
|
dialog.ShowError(err, w)
|
||||||
myprogressbar.Value = float64(update.Percentage)/100
|
return
|
||||||
myprogressbar.Refresh()
|
}
|
||||||
})
|
if reader == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
bytes, toperr = io.ReadAll(reader)
|
||||||
|
//topreader = reader
|
||||||
|
|
||||||
if update.Error != nil {
|
if toperr != nil {
|
||||||
diag.Dismiss()
|
dialog.ShowError(toperr, w)
|
||||||
dialog.ShowError(update.Error, w)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if update.GetURL != "" {
|
progress := make(chan oasisSdk.UploadProgress)
|
||||||
link = update.GetURL
|
myprogressbar := widget.NewProgressBar()
|
||||||
}
|
diag := dialog.NewCustom("Uploading file", "Hide", myprogressbar, w)
|
||||||
}
|
diag.Show()
|
||||||
|
go func() {
|
||||||
|
client.UploadFile(client.Ctx, reader.URI().Path(), progress)
|
||||||
|
}()
|
||||||
|
|
||||||
diag.Dismiss()
|
for update := range progress {
|
||||||
a.Clipboard().SetContent(link)
|
fyne.Do(func() {
|
||||||
dialog.ShowInformation("file successfully uploaded\nURL copied to your clipboard", link, w)
|
myprogressbar.Value = float64(update.Percentage) / 100
|
||||||
}()
|
myprogressbar.Refresh()
|
||||||
|
})
|
||||||
|
|
||||||
|
if update.Error != nil {
|
||||||
|
diag.Dismiss()
|
||||||
|
dialog.ShowError(update.Error, w)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if update.GetURL != "" {
|
||||||
|
link = update.GetURL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diag.Dismiss()
|
||||||
|
a.Clipboard().SetContent(link)
|
||||||
|
dialog.ShowInformation("file successfully uploaded\nURL copied to your clipboard", link, w)
|
||||||
|
}()
|
||||||
|
|
||||||
}, w)
|
}, w)
|
||||||
})
|
})
|
||||||
|
|
||||||
menu_help := fyne.NewMenu("π", mit, reconnect,deb)
|
menu_help := fyne.NewMenu("π", mit, reconnect, deb)
|
||||||
menu_changeroom := fyne.NewMenu("β", mic)
|
menu_changeroom := fyne.NewMenu("β", mic)
|
||||||
menu_configureview := fyne.NewMenu("γ", mia, mis, jtt, jtb)
|
menu_configureview := fyne.NewMenu("γ", mia, mis, jtt, jtb)
|
||||||
bit := fyne.NewMenuItem("mark selected message as read", func() {
|
bit := fyne.NewMenuItem("mark selected message as read", func() {
|
||||||
@@ -773,7 +771,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tabs.OnSelected = func(ti *container.TabItem) {
|
tabs.OnSelected = func(ti *container.TabItem) {
|
||||||
selectedScroller, ok := tabs.Selected().Content.(*widget.List)
|
selectedScroller, ok := tabs.Selected().Content.(*widget.List)
|
||||||
if !ok {
|
if !ok {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@@ -804,6 +802,6 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
statBar.SetText("nothing seems to be happening right now...")
|
statBar.SetText("nothing seems to be happening right now...")
|
||||||
w.SetContent(container.NewVSplit(container.NewVSplit(container.NewHSplit(tabs, &chatSidebar), container.NewHSplit(entry, sendbtn)), container.NewHSplit(&statBar,&chatInfo)))
|
w.SetContent(container.NewVSplit(container.NewVSplit(container.NewHSplit(tabs, &chatSidebar), container.NewHSplit(entry, sendbtn)), container.NewHSplit(&statBar, &chatInfo)))
|
||||||
w.ShowAndRun()
|
w.ShowAndRun()
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user