[v3 linux] dbus menu icon support

This commit is contained in:
Travis McLane
2023-10-26 16:56:06 -05:00
parent 24853a7e3b
commit 1a1e5b743a
2 changed files with 17 additions and 0 deletions
+2
View File
@@ -48,6 +48,8 @@ func main() {
}
myMenu := app.NewMenu()
myMenu.Add("Wails").SetBitmap(icons.WailsLogoBlackTransparent).SetEnabled(false)
myMenu.Add("Hello World!").OnClick(func(ctx *application.Context) {
println("Hello World!")
q := application.QuestionDialog().SetTitle("Ready?").SetMessage("Are you feeling ready?")
+15
View File
@@ -56,6 +56,11 @@ type systrayMenuItem struct {
dbusItem *dbusMenu
}
func (s *systrayMenuItem) setBitmap(data []byte) {
s.dbusItem.V1["icon-data"] = dbus.MakeVariant(data)
s.sysTray.update(s)
}
func (s *systrayMenuItem) setTooltip(v string) {
s.dbusItem.V1["tooltip"] = dbus.MakeVariant(v)
s.sysTray.update(s)
@@ -129,6 +134,9 @@ func (s *linuxSystemTray) processMenu(menu *Menu, parentId int32) {
if item.label != "" {
menuItem.V1["label"] = dbus.MakeVariant(item.label)
}
if item.bitmap != nil {
menuItem.V1["icon-data"] = dbus.MakeVariant(item.bitmap)
}
switch item.itemType {
case checkbox:
menuItem.V1["toggle-type"] = dbus.MakeVariant("checkmark")
@@ -446,6 +454,13 @@ func (s *linuxSystemTray) createPropSpec() map[string]map[string]*prop.Prop {
Emit: prop.EmitTrue,
Callback: nil,
},
"IconData": {
Value: "",
Writable: false,
Emit: prop.EmitTrue,
Callback: nil,
},
"IconName": {
Value: "",
Writable: false,