@@ -29,14 +29,26 @@ func CreateTray(a *App, icon []byte) (trayStart, trayEnd func()) {
2929 }, nil )
3030}
3131
32+ func (a * App ) UpdateTray (tray TrayContent ) {
33+ log .Printf ("UpdateTray" )
34+ updateTray (a , tray )
35+ }
36+
3237func (a * App ) UpdateTrayMenus (menus []MenuItem ) {
3338 log .Printf ("UpdateTrayMenus" )
39+ updateTrayMenus (a , menus )
40+ }
3441
35- systray .ResetMenu ()
42+ func (a * App ) UpdateTrayAndMenus (tray TrayContent , menus []MenuItem ) {
43+ log .Printf ("UpdateTrayAndMenus" )
44+ updateTray (a , tray )
45+ updateTrayMenus (a , menus )
46+ }
3647
37- for _ , menu := range menus {
38- createMenuItem (menu , a , nil )
39- }
48+ func (a * App ) ExitApp () {
49+ systray .Quit ()
50+ runtime .Quit (a .Ctx )
51+ os .Exit (0 )
4052}
4153
4254func addClickMenuItem (title , tooltip string , action func ()) * systray.MenuItem {
@@ -72,7 +84,7 @@ func createMenuItem(menu MenuItem, a *App, parent *systray.MenuItem) {
7284 }
7385}
7486
75- func (a * App ) UpdateTray ( tray TrayContent ) {
87+ func updateTray (a * App , tray TrayContent ) {
7688 if tray .Icon != "" {
7789 ico , err := os .ReadFile (GetPath (tray .Icon ))
7890 if err == nil {
@@ -88,8 +100,10 @@ func (a *App) UpdateTray(tray TrayContent) {
88100 }
89101}
90102
91- func (a * App ) ExitApp () {
92- systray .Quit ()
93- runtime .Quit (a .Ctx )
94- os .Exit (0 )
103+ func updateTrayMenus (a * App , menus []MenuItem ) {
104+ systray .ResetMenu ()
105+
106+ for _ , menu := range menus {
107+ createMenuItem (menu , a , nil )
108+ }
95109}
0 commit comments