5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-04 16:40:41 +08:00

Remove Menu.On()

This commit is contained in:
Lea Anthony 2021-01-11 11:25:48 +11:00
parent 8053357d99
commit a4153fae57
No known key found for this signature in database
GPG Key ID: 33DAF7BB90A58405
3 changed files with 11 additions and 29 deletions

View File

@ -1,15 +1,13 @@
package runtime package runtime
import ( import (
"github.com/wailsapp/wails/v2/internal/messagedispatcher/message"
"github.com/wailsapp/wails/v2/internal/servicebus" "github.com/wailsapp/wails/v2/internal/servicebus"
"github.com/wailsapp/wails/v2/pkg/menu" "github.com/wailsapp/wails/v2/pkg/menu"
) )
// Menu defines all Menu related operations // Menu defines all Menu related operations
type Menu interface { type Menu interface {
On(menuID string, callback func(*menu.MenuItem)) UpdateApplicationMenu()
Update()
GetByID(menuID string) *menu.MenuItem GetByID(menuID string) *menu.MenuItem
RemoveByID(id string) bool RemoveByID(id string) bool
} }
@ -27,15 +25,7 @@ func newMenu(bus *servicebus.ServiceBus, menu *menu.Menu) Menu {
} }
} }
// On registers a listener for a particular event func (m *menuRuntime) UpdateApplicationMenu() {
func (m *menuRuntime) On(menuID string, callback func(*menu.MenuItem)) {
m.bus.Publish("menu:on", &message.MenuOnMessage{
MenuID: menuID,
Callback: callback,
})
}
func (m *menuRuntime) Update() {
m.bus.Publish("menu:updateappmenu", nil) m.bus.Publish("menu:updateappmenu", nil)
} }

View File

@ -7,7 +7,6 @@ import (
"sync" "sync"
"github.com/wailsapp/wails/v2/internal/logger" "github.com/wailsapp/wails/v2/internal/logger"
"github.com/wailsapp/wails/v2/internal/messagedispatcher/message"
"github.com/wailsapp/wails/v2/internal/servicebus" "github.com/wailsapp/wails/v2/internal/servicebus"
"github.com/wailsapp/wails/v2/pkg/menu" "github.com/wailsapp/wails/v2/pkg/menu"
) )
@ -116,11 +115,6 @@ func (m *Menu) Start() error {
m.logger.Trace("%s", err.Error()) m.logger.Trace("%s", err.Error())
} }
case "on":
listenerDetails := menuMessage.Data().(*message.MenuOnMessage)
id := listenerDetails.MenuID
m.listeners[id] = append(m.listeners[id], listenerDetails.Callback)
// Make sure we catch any menu updates // Make sure we catch any menu updates
case "updateappmenu": case "updateappmenu":
updatedMenu, err := m.menuManager.UpdateApplicationMenu() updatedMenu, err := m.menuManager.UpdateApplicationMenu()
@ -128,10 +122,8 @@ func (m *Menu) Start() error {
m.logger.Trace("%s", err.Error()) m.logger.Trace("%s", err.Error())
return return
} }
//updatedMenu := menuMessage.Data().(*menu.Menu)
//m.processMenu(updatedMenu) // Notify frontend of menu change
//
//// Notify frontend of menu change
m.bus.Publish("menufrontend:updateappmenu", updatedMenu) m.bus.Publish("menufrontend:updateappmenu", updatedMenu)
default: default:

View File

@ -67,7 +67,7 @@ func (m *Menu) addMenu(data *menu.CallbackData) {
removeMenu.Label = "Remove " + menuText removeMenu.Label = "Remove " + menuText
} }
} }
m.runtime.Menu.Update() m.runtime.Menu.UpdateApplicationMenu()
} }
func (m *Menu) removeMenu(_ *menu.CallbackData) { func (m *Menu) removeMenu(_ *menu.CallbackData) {
@ -97,7 +97,7 @@ func (m *Menu) removeMenu(_ *menu.CallbackData) {
//} //}
// //
//// parent.Append(menu.Text(menuText, menuText, menu.Key("["))) //// parent.Append(menu.Text(menuText, menuText, menu.Key("[")))
//m.runtime.Menu.Update() //m.runtime.Menu.UpdateApplicationMenu()
} }
func (m *Menu) createDynamicMenuTwo(data *menu.CallbackData) { func (m *Menu) createDynamicMenuTwo(data *menu.CallbackData) {
@ -115,8 +115,8 @@ func (m *Menu) createDynamicMenuTwo(data *menu.CallbackData) {
menu.Separator(), menu.Separator(),
)) ))
m.runtime.Menu.On("Insert Before Random", m.insertBeforeRandom) //m.runtime.Menu.On("Insert Before Random", m.insertBeforeRandom)
m.runtime.Menu.On("Insert After Random", m.insertAfterRandom) //m.runtime.Menu.On("Insert After Random", m.insertAfterRandom)
// Initialise out map // Initialise out map
m.dynamicMenuItems = make(map[string]*menu.MenuItem) m.dynamicMenuItems = make(map[string]*menu.MenuItem)
@ -137,7 +137,7 @@ func (m *Menu) createDynamicMenuTwo(data *menu.CallbackData) {
} }
dm1.InsertAfter(dm2) dm1.InsertAfter(dm2)
m.runtime.Menu.Update() m.runtime.Menu.UpdateApplicationMenu()
} }
func (m *Menu) insertBeforeRandom(_ *menu.MenuItem) { func (m *Menu) insertBeforeRandom(_ *menu.MenuItem) {
@ -172,7 +172,7 @@ func (m *Menu) insertBeforeRandom(_ *menu.MenuItem) {
item.Label)) item.Label))
item.InsertBefore(newItem) item.InsertBefore(newItem)
m.runtime.Menu.Update() m.runtime.Menu.UpdateApplicationMenu()
} }
func (m *Menu) insertAfterRandom(_ *menu.MenuItem) { func (m *Menu) insertAfterRandom(_ *menu.MenuItem) {
@ -204,7 +204,7 @@ func (m *Menu) insertAfterRandom(_ *menu.MenuItem) {
item.Label)) item.Label))
item.InsertAfter(newItem) item.InsertAfter(newItem)
m.runtime.Menu.Update() m.runtime.Menu.UpdateApplicationMenu()
} }
func (m *Menu) processPlainText(callbackData *menu.CallbackData) { func (m *Menu) processPlainText(callbackData *menu.CallbackData) {