5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-03 06:20:48 +08:00

[v2] Update Menu runtime

This commit is contained in:
Lea Anthony 2021-09-12 20:45:40 +10:00
parent 3c0da9fd15
commit d6cdd1df82
6 changed files with 86 additions and 99 deletions

View File

@ -118,8 +118,8 @@ func (b BridgeClient) DarkModeEnabled(callbackID string) {
b.session.log.Info("DarkModeEnabled unsupported in Bridge mode") b.session.log.Info("DarkModeEnabled unsupported in Bridge mode")
} }
func (b BridgeClient) SetApplicationMenu(menuJSON string) { func (b BridgeClient) MenuSetApplicationMenu(menuJSON string) {
b.session.log.Info("SetApplicationMenu unsupported in Bridge mode") b.session.log.Info("MenuSetApplicationMenu unsupported in Bridge mode")
} }
func (b BridgeClient) SetTrayMenu(trayMenuJSON string) { func (b BridgeClient) SetTrayMenu(trayMenuJSON string) {

View File

@ -120,10 +120,10 @@ func processMenuItem(parent *winc.MenuItem, menuItem *menu.MenuItem) {
} }
} }
func (f *Frontend) SetApplicationMenu(menu *menu.Menu) { func (f *Frontend) MenuSetApplicationMenu(menu *menu.Menu) {
f.mainWindow.SetApplicationMenu(menu) f.mainWindow.SetApplicationMenu(menu)
} }
func (f *Frontend) UpdateApplicationMenu() { func (f *Frontend) MenuUpdateApplicationMenu() {
processMenu(f.mainWindow, f.mainWindow.applicationMenu) processMenu(f.mainWindow, f.mainWindow.applicationMenu)
} }

View File

@ -230,12 +230,12 @@ func (d *DevWebServer) WindowSetRGBA(col *options.RGBA) {
d.desktopFrontend.WindowSetRGBA(col) d.desktopFrontend.WindowSetRGBA(col)
} }
func (d *DevWebServer) SetApplicationMenu(menu *menu.Menu) { func (d *DevWebServer) MenuSetApplicationMenu(menu *menu.Menu) {
d.desktopFrontend.SetApplicationMenu(menu) d.desktopFrontend.MenuSetApplicationMenu(menu)
} }
func (d *DevWebServer) UpdateApplicationMenu() { func (d *DevWebServer) MenuUpdateApplicationMenu() {
d.desktopFrontend.UpdateApplicationMenu() d.desktopFrontend.MenuUpdateApplicationMenu()
} }
func (d *DevWebServer) Notify(name string, data ...interface{}) { func (d *DevWebServer) Notify(name string, data ...interface{}) {

View File

@ -89,8 +89,8 @@ type Frontend interface {
WindowReload() WindowReload()
// Menus // Menus
SetApplicationMenu(menu *menu.Menu) MenuSetApplicationMenu(menu *menu.Menu)
UpdateApplicationMenu() MenuUpdateApplicationMenu()
//SetTrayMenu(menu *menu.TrayMenu) //SetTrayMenu(menu *menu.TrayMenu)
//UpdateTrayMenuLabel(menu *menu.TrayMenu) //UpdateTrayMenuLabel(menu *menu.TrayMenu)
//UpdateContextMenu(contextMenu *menu.ContextMenu) //UpdateContextMenu(contextMenu *menu.ContextMenu)

View File

@ -282,12 +282,15 @@
function WindowGetPosition() { function WindowGetPosition() {
return Call(":wails:WindowGetPos"); return Call(":wails:WindowGetPos");
} }
function WindowHide() { function WindowHide() {
window.WailsInvoke("WH"); window.WailsInvoke("WH");
} }
function WindowShow() { function WindowShow() {
window.WailsInvoke("WS"); window.WailsInvoke("WS");
} }
function WindowMaximise() { function WindowMaximise() {
window.WailsInvoke("WM"); window.WailsInvoke("WM");
} }

View File

@ -2,31 +2,15 @@ package runtime
import ( import (
"context" "context"
"github.com/wailsapp/wails/v2/pkg/menu"
) )
func UpdateApplicationMenu(ctx context.Context) { func MenuSetApplicationMenu(ctx context.Context, menu *menu.Menu) {
frontend := getFrontend(ctx) frontend := getFrontend(ctx)
frontend.UpdateApplicationMenu() frontend.MenuSetApplicationMenu(menu)
} }
/* func MenuUpdateApplicationMenu(ctx context.Context) {
func UpdateContextMenu(ctx context.Context, contextMenu *menu.ContextMenu) {
frontend := getFrontend(ctx) frontend := getFrontend(ctx)
bus.Publish("menu:updatecontextmenu", contextMenu) frontend.MenuUpdateApplicationMenu()
} }
func SetTrayMenu(ctx context.Context, trayMenu *menu.TrayMenu) {
frontend := getFrontend(ctx)
bus.Publish("menu:settraymenu", trayMenu)
}
func UpdateTrayMenuLabel(ctx context.Context, trayMenu *menu.TrayMenu) {
frontend := getFrontend(ctx)
bus.Publish("menu:updatetraymenulabel", trayMenu)
}
func DeleteTrayMenu(ctx context.Context, trayMenu *menu.TrayMenu) {
frontend := getFrontend(ctx)
bus.Publish("menu:deletetraymenu", trayMenu)
}
*/