package main import ( "context" "github.com/wailsapp/wails/v2/pkg/options" "github.com/wailsapp/wails/v2/pkg/runtime" "strings" ) var wailsContext *context.Context // App struct type App struct { ctx context.Context } // NewApp creates a new App application struct func NewApp() *App { return &App{} } // startup is called when the app starts. The context is saved // so we can call the runtime methods func (a *App) startup(ctx context.Context) { wailsContext = &ctx //runtime.WindowMaximise(ctx) } func (a *App) onSecondInstanceLaunch(secondInstanceData options.SecondInstanceData) { var secondInstanceArgs = secondInstanceData.Args println("user opened second instance", strings.Join(secondInstanceData.Args, ",")) println("user opened second from", secondInstanceData.WorkingDirectory) runtime.WindowUnminimise(*wailsContext) runtime.Show(*wailsContext) go runtime.EventsEmit(*wailsContext, "launchArgs", secondInstanceArgs) }