sending retractions
This commit is contained in:
28
main.go
28
main.go
@@ -1415,6 +1415,32 @@ func main() {
|
|||||||
client.MarkAsRead(&m)
|
client.MarkAsRead(&m)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
rec := fyne.NewMenuItem("retract selected message", func() {
|
||||||
|
selectedScroller, ok := AppTabs.Selected().Content.(*widget.List)
|
||||||
|
if !ok {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var activeMucJid string
|
||||||
|
for jid, tabData := range UITabs {
|
||||||
|
if tabData.Scroller == selectedScroller {
|
||||||
|
activeMucJid = jid
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if !chatTabs[activeMucJid].isMuc {
|
||||||
|
return // TODO: For 1:1 DMs we use OccupantID for the ID and send message type 'chat'
|
||||||
|
}
|
||||||
|
|
||||||
|
id := chatTabs[activeMucJid].Messages[selectedId].Raw.StanzaID.ID
|
||||||
|
msg := fmt.Sprintf("<message type='groupchat' to='%s' id='retract-message-1'><retract id='%s' xmlns='urn:xmpp:message-retract:1'/><fallback xmlns='urn:xmpp:fallback:0' for='urn:xmpp:message-retract:1' /><body>This user retracted a previous message, but it's unsupported by your client.</body><store xmlns='urn:xmpp:hints'/></message>", activeMucJid, id)
|
||||||
|
fmt.Println(msg)
|
||||||
|
err := client.Session.Send(context.TODO(), xml.NewDecoder(strings.NewReader(msg)))
|
||||||
|
if err != nil {
|
||||||
|
dialog.ShowError(err, w)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
bia := fyne.NewMenuItem("toggle replying to message", func() {
|
bia := fyne.NewMenuItem("toggle replying to message", func() {
|
||||||
replying = !replying
|
replying = !replying
|
||||||
})
|
})
|
||||||
@@ -1524,7 +1550,7 @@ func main() {
|
|||||||
dialog.ShowCustom("Message", "Close", pre, w)
|
dialog.ShowCustom("Message", "Close", pre, w)
|
||||||
})
|
})
|
||||||
|
|
||||||
menu_messageoptions := fyne.NewMenu("Γ", bit, bia, bic, red, blck)
|
menu_messageoptions := fyne.NewMenu("Γ", bit, bia, bic, rec, red, blck)
|
||||||
ma := fyne.NewMainMenu(menu_help, menu_changeroom, menu_configureview, menu_messageoptions, menu_jokes)
|
ma := fyne.NewMainMenu(menu_help, menu_changeroom, menu_configureview, menu_messageoptions, menu_jokes)
|
||||||
w.SetMainMenu(ma)
|
w.SetMainMenu(ma)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user