From 742e4ba2cb0d287f5fb1172aa0d0356bfc94ff18 Mon Sep 17 00:00:00 2001 From: Lea Anthony Date: Thu, 14 Jan 2021 11:07:06 +1100 Subject: [PATCH] Remove WailsInit and WailsShutdown methodsr --- v2/internal/app/desktop.go | 6 ++ v2/internal/binding/binding.go | 20 ----- v2/internal/binding/boundMethod.go | 53 ------------ v2/internal/binding/db.go | 46 ---------- v2/internal/ffenestri/ffenestri_client.go | 8 +- .../messagedispatcher/dispatchclient.go | 8 +- .../messagedispatcher/messagedispatcher.go | 8 +- v2/internal/parse/parse.go | 10 +-- v2/internal/runtime/dialog.go | 14 ++-- v2/internal/subsystem/binding.go | 47 ----------- v2/internal/subsystem/call.go | 8 +- v2/internal/webserver/websockets.go | 26 ++++-- v2/pkg/options/{ => dialog}/dialog.go | 2 +- v2/pkg/options/options.go | 3 + v2/pkg/parser/method.go | 5 -- v2/test/kitchensink/dialog.go | 8 +- .../frontend/src/pages/Dialog/Message/code.go | 4 +- .../frontend/src/pages/Dialog/Open/code.go | 4 +- .../frontend/src/pages/Dialog/Save/code.go | 4 +- v2/test/kitchensink/go.mod | 4 +- v2/test/kitchensink/go.sum | 83 +++++++------------ v2/test/runtime/runtime.go | 16 ++-- 22 files changed, 105 insertions(+), 282 deletions(-) rename v2/pkg/options/{ => dialog}/dialog.go (98%) diff --git a/v2/internal/app/desktop.go b/v2/internal/app/desktop.go index 96e88360d..6b2337596 100644 --- a/v2/internal/app/desktop.go +++ b/v2/internal/app/desktop.go @@ -43,6 +43,10 @@ type App struct { // Application Stores loglevelStore *runtime.Store appconfigStore *runtime.Store + + // Startup/Shutdown + startup func(*runtime.Runtime) + shutdown func() } // Create App @@ -81,6 +85,8 @@ func CreateApp(appoptions *options.App) (*App, error) { logger: myLogger, bindings: binding.NewBindings(myLogger), menuManager: menuManager, + startup: appoptions.Startup, + shutdown: appoptions.Shutdown, } result.options = appoptions diff --git a/v2/internal/binding/binding.go b/v2/internal/binding/binding.go index ca063c5ca..6e831fadd 100755 --- a/v2/internal/binding/binding.go +++ b/v2/internal/binding/binding.go @@ -34,26 +34,6 @@ func (b *Bindings) Add(structPtr interface{}) error { structName := splitName[1] methodName := splitName[2] - // Is this WailsInit? - if method.IsWailsInit() { - err := b.db.AddWailsInit(method) - if err != nil { - return err - } - b.logger.Trace("Registered WailsInit method: %s", method.Name) - continue - } - - // Is this WailsShutdown? - if method.IsWailsShutdown() { - err := b.db.AddWailsShutdown(method) - if err != nil { - return err - } - b.logger.Trace("Registered WailsShutdown method: %s", method.Name) - continue - } - // Add it as a regular method b.db.AddMethod(packageName, structName, methodName, method) diff --git a/v2/internal/binding/boundMethod.go b/v2/internal/binding/boundMethod.go index 7807bcfda..30b72af9c 100644 --- a/v2/internal/binding/boundMethod.go +++ b/v2/internal/binding/boundMethod.go @@ -4,7 +4,6 @@ import ( "encoding/json" "fmt" "reflect" - "strings" ) // BoundMethod defines all the data related to a Go method that is @@ -17,58 +16,6 @@ type BoundMethod struct { Method reflect.Value `json:"-"` } -// IsWailsInit returns true if the method name is "WailsInit" -func (b *BoundMethod) IsWailsInit() bool { - return strings.HasSuffix(b.Name, "WailsInit") -} - -// IsWailsShutdown returns true if the method name is "WailsShutdown" -func (b *BoundMethod) IsWailsShutdown() bool { - return strings.HasSuffix(b.Name, "WailsShutdown") -} - -// VerifyWailsInit checks if the WailsInit signature is correct -func (b *BoundMethod) VerifyWailsInit() error { - // Must only have 1 input - if b.InputCount() != 1 { - return fmt.Errorf("invalid method signature for %s: expected `WailsInit(*wails.Runtime) error`", b.Name) - } - - // Check input type - if !b.Inputs[0].IsType("*runtime.Runtime") { - return fmt.Errorf("invalid method signature for %s: expected `WailsInit(*wails.Runtime) error`", b.Name) - } - - // Must only have 1 output - if b.OutputCount() != 1 { - return fmt.Errorf("invalid method signature for %s: expected `WailsInit(*wails.Runtime) error`", b.Name) - } - - // Check output type - if !b.Outputs[0].IsError() { - return fmt.Errorf("invalid method signature for %s: expected `WailsInit(*wails.Runtime) error`", b.Name) - } - - // Input must be of type Runtime - return nil -} - -// VerifyWailsShutdown checks if the WailsShutdown signature is correct -func (b *BoundMethod) VerifyWailsShutdown() error { - // Must have no inputs - if b.InputCount() != 0 { - return fmt.Errorf("invalid method signature for WailsShutdown: expected `WailsShutdown()`") - } - - // Must have no outputs - if b.OutputCount() != 0 { - return fmt.Errorf("invalid method signature for WailsShutdown: expected `WailsShutdown()`") - } - - // Input must be of type Runtime - return nil -} - // InputCount returns the number of inputs this bound method has func (b *BoundMethod) InputCount() int { return len(b.Inputs) diff --git a/v2/internal/binding/db.go b/v2/internal/binding/db.go index e2bc6f357..37c369720 100644 --- a/v2/internal/binding/db.go +++ b/v2/internal/binding/db.go @@ -15,10 +15,6 @@ type DB struct { // It used for performance gains at runtime methodMap map[string]*BoundMethod - // These are slices of methods registered using WailsInit and WailsShutdown - wailsInitMethods []*BoundMethod - wailsShutdownMethods []*BoundMethod - // Lock to ensure sync access to the data lock sync.RWMutex } @@ -94,38 +90,6 @@ func (d *DB) AddMethod(packageName string, structName string, methodName string, } -// AddWailsInit checks the given method is a WailsInit method and if it -// is, adds it to the list of WailsInit methods -func (d *DB) AddWailsInit(method *BoundMethod) error { - err := method.VerifyWailsInit() - if err != nil { - return err - } - - // Lock the db whilst processing and unlock on return - d.lock.Lock() - defer d.lock.Unlock() - - d.wailsInitMethods = append(d.wailsInitMethods, method) - return nil -} - -// AddWailsShutdown checks the given method is a WailsInit method and if it -// is, adds it to the list of WailsShutdown methods -func (d *DB) AddWailsShutdown(method *BoundMethod) error { - err := method.VerifyWailsShutdown() - if err != nil { - return err - } - - // Lock the db whilst processing and unlock on return - d.lock.Lock() - defer d.lock.Unlock() - - d.wailsShutdownMethods = append(d.wailsShutdownMethods, method) - return nil -} - // ToJSON converts the method map to JSON func (d *DB) ToJSON() (string, error) { @@ -138,13 +102,3 @@ func (d *DB) ToJSON() (string, error) { // Return zero copy string as this string will be read only return *(*string)(unsafe.Pointer(&bytes)), err } - -// WailsInitMethods returns the list of registered WailsInit methods -func (d *DB) WailsInitMethods() []*BoundMethod { - return d.wailsInitMethods -} - -// WailsShutdownMethods returns the list of registered WailsInit methods -func (d *DB) WailsShutdownMethods() []*BoundMethod { - return d.wailsShutdownMethods -} diff --git a/v2/internal/ffenestri/ffenestri_client.go b/v2/internal/ffenestri/ffenestri_client.go index 8bbe0578f..2978fde59 100644 --- a/v2/internal/ffenestri/ffenestri_client.go +++ b/v2/internal/ffenestri/ffenestri_client.go @@ -12,10 +12,10 @@ package ffenestri import "C" import ( + "github.com/wailsapp/wails/v2/pkg/options/dialog" "strconv" "github.com/wailsapp/wails/v2/internal/logger" - "github.com/wailsapp/wails/v2/pkg/options" ) // Client is our implentation of messageDispatcher.Client @@ -120,7 +120,7 @@ func (c *Client) WindowSetColour(colour int) { } // OpenDialog will open a dialog with the given title and filter -func (c *Client) OpenDialog(dialogOptions *options.OpenDialog, callbackID string) { +func (c *Client) OpenDialog(dialogOptions *dialog.OpenDialog, callbackID string) { C.OpenDialog(c.app.app, c.app.string2CString(callbackID), c.app.string2CString(dialogOptions.Title), @@ -138,7 +138,7 @@ func (c *Client) OpenDialog(dialogOptions *options.OpenDialog, callbackID string } // SaveDialog will open a dialog with the given title and filter -func (c *Client) SaveDialog(dialogOptions *options.SaveDialog, callbackID string) { +func (c *Client) SaveDialog(dialogOptions *dialog.SaveDialog, callbackID string) { C.SaveDialog(c.app.app, c.app.string2CString(callbackID), c.app.string2CString(dialogOptions.Title), @@ -152,7 +152,7 @@ func (c *Client) SaveDialog(dialogOptions *options.SaveDialog, callbackID string } // MessageDialog will open a message dialog with the given options -func (c *Client) MessageDialog(dialogOptions *options.MessageDialog, callbackID string) { +func (c *Client) MessageDialog(dialogOptions *dialog.MessageDialog, callbackID string) { // Sanity check button length if len(dialogOptions.Buttons) > 4 { diff --git a/v2/internal/messagedispatcher/dispatchclient.go b/v2/internal/messagedispatcher/dispatchclient.go index 9da3731ed..ec753af99 100644 --- a/v2/internal/messagedispatcher/dispatchclient.go +++ b/v2/internal/messagedispatcher/dispatchclient.go @@ -5,7 +5,7 @@ import ( "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/pkg/options" + "github.com/wailsapp/wails/v2/pkg/options/dialog" ) // Client defines what a frontend client can do @@ -13,9 +13,9 @@ type Client interface { Quit() NotifyEvent(message string) CallResult(message string) - OpenDialog(dialogOptions *options.OpenDialog, callbackID string) - SaveDialog(dialogOptions *options.SaveDialog, callbackID string) - MessageDialog(dialogOptions *options.MessageDialog, callbackID string) + OpenDialog(dialogOptions *dialog.OpenDialog, callbackID string) + SaveDialog(dialogOptions *dialog.SaveDialog, callbackID string) + MessageDialog(dialogOptions *dialog.MessageDialog, callbackID string) WindowSetTitle(title string) WindowShow() WindowHide() diff --git a/v2/internal/messagedispatcher/messagedispatcher.go b/v2/internal/messagedispatcher/messagedispatcher.go index 7df5c0616..589a23256 100644 --- a/v2/internal/messagedispatcher/messagedispatcher.go +++ b/v2/internal/messagedispatcher/messagedispatcher.go @@ -2,6 +2,7 @@ package messagedispatcher import ( "encoding/json" + "github.com/wailsapp/wails/v2/pkg/options/dialog" "strconv" "strings" "sync" @@ -10,7 +11,6 @@ import ( "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/pkg/options" ) // Dispatcher translates messages received from the frontend @@ -370,7 +370,7 @@ func (d *Dispatcher) processDialogMessage(result *servicebus.Message) { dialogType := splitTopic[2] switch dialogType { case "open": - dialogOptions, ok := result.Data().(*options.OpenDialog) + dialogOptions, ok := result.Data().(*dialog.OpenDialog) if !ok { d.logger.Error("Invalid data for 'dialog:select:open' : %#v", result.Data()) return @@ -384,7 +384,7 @@ func (d *Dispatcher) processDialogMessage(result *servicebus.Message) { client.frontend.OpenDialog(dialogOptions, callbackID) } case "save": - dialogOptions, ok := result.Data().(*options.SaveDialog) + dialogOptions, ok := result.Data().(*dialog.SaveDialog) if !ok { d.logger.Error("Invalid data for 'dialog:select:save' : %#v", result.Data()) return @@ -398,7 +398,7 @@ func (d *Dispatcher) processDialogMessage(result *servicebus.Message) { client.frontend.SaveDialog(dialogOptions, callbackID) } case "message": - dialogOptions, ok := result.Data().(*options.MessageDialog) + dialogOptions, ok := result.Data().(*dialog.MessageDialog) if !ok { d.logger.Error("Invalid data for 'dialog:select:message' : %#v", result.Data()) return diff --git a/v2/internal/parse/parse.go b/v2/internal/parse/parse.go index e9d98236f..cadbc2f85 100644 --- a/v2/internal/parse/parse.go +++ b/v2/internal/parse/parse.go @@ -10,8 +10,6 @@ import ( "golang.org/x/tools/go/packages" ) -var internalMethods = slicer.String([]string{"WailsInit", "Wails Shutdown"}) - var structCache = make(map[string]*ParsedStruct) var boundStructs = make(map[string]*ParsedStruct) var boundMethods = []string{} @@ -49,7 +47,7 @@ func ParseProject(projectPath string) (BoundStructs, error) { cfg := &packages.Config{Mode: packages.NeedFiles | packages.NeedSyntax | packages.NeedTypesInfo} pkgs, err := packages.Load(cfg, projectPath) if err != nil { - fmt.Fprintf(os.Stderr, "load: %v\n", err) + _, _ = fmt.Fprintf(os.Stderr, "load: %v\n", err) os.Exit(1) } if packages.PrintErrors(pkgs) > 0 { @@ -203,10 +201,6 @@ func ParseProject(projectPath string) (BoundStructs, error) { // This is a struct pointer method i, ok := se.X.(*ast.Ident) if ok { - // We want to ignore Internal functions - if internalMethods.Contains(x.Name.Name) { - continue - } // If we haven't already found this struct, // Create a placeholder in the cache parsedStruct := structCache[i.Name] @@ -437,4 +431,6 @@ func ParseProject(projectPath string) (BoundStructs, error) { println() println("}") println() + + return nil, nil } diff --git a/v2/internal/runtime/dialog.go b/v2/internal/runtime/dialog.go index 3c89f35f5..126bbb9b5 100644 --- a/v2/internal/runtime/dialog.go +++ b/v2/internal/runtime/dialog.go @@ -5,14 +5,14 @@ import ( "github.com/wailsapp/wails/v2/internal/crypto" "github.com/wailsapp/wails/v2/internal/servicebus" - "github.com/wailsapp/wails/v2/pkg/options" + dialogoptions "github.com/wailsapp/wails/v2/pkg/options/dialog" ) // Dialog defines all Dialog related operations type Dialog interface { - Open(dialogOptions *options.OpenDialog) []string - Save(dialogOptions *options.SaveDialog) string - Message(dialogOptions *options.MessageDialog) string + Open(dialogOptions *dialogoptions.OpenDialog) []string + Save(dialogOptions *dialogoptions.SaveDialog) string + Message(dialogOptions *dialogoptions.MessageDialog) string } // dialog exposes the Dialog interface @@ -45,7 +45,7 @@ func (r *dialog) processTitleAndFilter(params ...string) (string, string) { } // Open prompts the user to select a file -func (r *dialog) Open(dialogOptions *options.OpenDialog) []string { +func (r *dialog) Open(dialogOptions *dialogoptions.OpenDialog) []string { // Create unique dialog callback uniqueCallback := crypto.RandomID() @@ -70,7 +70,7 @@ func (r *dialog) Open(dialogOptions *options.OpenDialog) []string { } // Save prompts the user to select a file -func (r *dialog) Save(dialogOptions *options.SaveDialog) string { +func (r *dialog) Save(dialogOptions *dialogoptions.SaveDialog) string { // Create unique dialog callback uniqueCallback := crypto.RandomID() @@ -95,7 +95,7 @@ func (r *dialog) Save(dialogOptions *options.SaveDialog) string { } // Message show a message to the user -func (r *dialog) Message(dialogOptions *options.MessageDialog) string { +func (r *dialog) Message(dialogOptions *dialogoptions.MessageDialog) string { // Create unique dialog callback uniqueCallback := crypto.RandomID() diff --git a/v2/internal/subsystem/binding.go b/v2/internal/subsystem/binding.go index 8890a6319..5e5ec343a 100644 --- a/v2/internal/subsystem/binding.go +++ b/v2/internal/subsystem/binding.go @@ -5,8 +5,6 @@ import ( "github.com/wailsapp/wails/v2/internal/logger" "github.com/wailsapp/wails/v2/internal/runtime" "github.com/wailsapp/wails/v2/internal/servicebus" - "os" - "time" ) // Binding is the Binding subsystem. It manages all service bus messages @@ -26,13 +24,6 @@ type Binding struct { runtime *runtime.Runtime } -func showError(err error) { - // Add a slight delay so log buffer clears - time.Sleep(1 * time.Second) - println("\n\n\n\n\n\n") - println("Fatal Error in WailsInit(): " + err.Error()) -} - // NewBinding creates a new binding subsystem. Uses the given bindings db for reference. func NewBinding(bus *servicebus.ServiceBus, logger *logger.Logger, bindings *binding.Bindings, runtime *runtime.Runtime) (*Binding, error) { @@ -56,16 +47,6 @@ func NewBinding(bus *servicebus.ServiceBus, logger *logger.Logger, bindings *bin runtime: runtime, } - // Call WailsInit methods once the frontend is loaded - runtime.Events.On("wails:loaded", func(...interface{}) { - result.logger.Trace("Calling WailsInit() methods") - err := result.CallWailsInit() - if err != nil { - showError(err) - os.Exit(1) - } - }) - return result, nil } @@ -94,34 +75,6 @@ func (b *Binding) Start() error { return nil } -// CallWailsInit will callback to the registered WailsInit -// methods with the runtime object -func (b *Binding) CallWailsInit() error { - for _, wailsinit := range b.bindings.DB().WailsInitMethods() { - _, err := wailsinit.Call([]interface{}{b.runtime}) - if err != nil { - return err - } - } - return nil -} - -// CallWailsShutdown will callback to the registered WailsShutdown -// methods with the runtime object -func (b *Binding) CallWailsShutdown() error { - for _, wailsshutdown := range b.bindings.DB().WailsShutdownMethods() { - _, err := wailsshutdown.Call([]interface{}{}) - if err != nil { - return err - } - } - return nil -} - func (b *Binding) shutdown() { - err := b.CallWailsShutdown() - if err != nil { - showError(err) - } b.logger.Trace("Shutdown") } diff --git a/v2/internal/subsystem/call.go b/v2/internal/subsystem/call.go index 3220f7011..60e82f9cc 100644 --- a/v2/internal/subsystem/call.go +++ b/v2/internal/subsystem/call.go @@ -3,6 +3,7 @@ package subsystem import ( "encoding/json" "fmt" + "github.com/wailsapp/wails/v2/pkg/options/dialog" "strings" "github.com/wailsapp/wails/v2/internal/binding" @@ -10,7 +11,6 @@ import ( "github.com/wailsapp/wails/v2/internal/messagedispatcher/message" "github.com/wailsapp/wails/v2/internal/runtime" "github.com/wailsapp/wails/v2/internal/servicebus" - "github.com/wailsapp/wails/v2/pkg/options" ) // Call is the Call subsystem. It manages all service bus messages @@ -131,7 +131,7 @@ func (c *Call) processSystemCall(payload *message.CallMessage, clientID string) darkModeEnabled := c.runtime.System.IsDarkMode() c.sendResult(darkModeEnabled, payload, clientID) case "Dialog.Open": - dialogOptions := new(options.OpenDialog) + dialogOptions := new(dialog.OpenDialog) err := json.Unmarshal(payload.Args[0], dialogOptions) if err != nil { c.logger.Error("Error decoding: %s", err) @@ -139,7 +139,7 @@ func (c *Call) processSystemCall(payload *message.CallMessage, clientID string) result := c.runtime.Dialog.Open(dialogOptions) c.sendResult(result, payload, clientID) case "Dialog.Save": - dialogOptions := new(options.SaveDialog) + dialogOptions := new(dialog.SaveDialog) err := json.Unmarshal(payload.Args[0], dialogOptions) if err != nil { c.logger.Error("Error decoding: %s", err) @@ -147,7 +147,7 @@ func (c *Call) processSystemCall(payload *message.CallMessage, clientID string) result := c.runtime.Dialog.Save(dialogOptions) c.sendResult(result, payload, clientID) case "Dialog.Message": - dialogOptions := new(options.MessageDialog) + dialogOptions := new(dialog.MessageDialog) err := json.Unmarshal(payload.Args[0], dialogOptions) if err != nil { c.logger.Error("Error decoding: %s", err) diff --git a/v2/internal/webserver/websockets.go b/v2/internal/webserver/websockets.go index f069ff2db..7e3b1c090 100644 --- a/v2/internal/webserver/websockets.go +++ b/v2/internal/webserver/websockets.go @@ -3,7 +3,7 @@ package webserver import ( "context" "github.com/wailsapp/wails/v2/pkg/menu" - "github.com/wailsapp/wails/v2/pkg/options" + "github.com/wailsapp/wails/v2/pkg/options/dialog" "net/http" "strings" @@ -20,11 +20,27 @@ type WebClient struct { running bool } -func (wc *WebClient) OpenDialog(dialogOptions *options.OpenDialog, callbackID string) { +func (wc *WebClient) MessageDialog(dialogOptions *dialog.MessageDialog, callbackID string) { wc.logger.Info("Not implemented in server build") } -func (wc *WebClient) SaveDialog(dialogOptions *options.SaveDialog, callbackID string) { +func (wc *WebClient) SetApplicationMenu(menuJSON string) { + wc.logger.Info("Not implemented in server build") +} + +func (wc *WebClient) UpdateTrayMenu(trayMenuJSON string) { + wc.logger.Info("Not implemented in server build") +} + +func (wc *WebClient) UpdateContextMenu(contextMenuJSON string) { + wc.logger.Info("Not implemented in server build") +} + +func (wc *WebClient) OpenDialog(dialogOptions *dialog.OpenDialog, callbackID string) { + wc.logger.Info("Not implemented in server build") +} + +func (wc *WebClient) SaveDialog(dialogOptions *dialog.SaveDialog, callbackID string) { wc.logger.Info("Not implemented in server build") } @@ -84,10 +100,6 @@ func (wc *WebClient) UpdateTrayIcon(name string) { wc.logger.Info("Not implemented in server build") } -func (wc *WebClient) UpdateContextMenus(contextMenus *menu.ContextMenus) { - wc.logger.Info("Not implemented in server build") -} - // Quit terminates the webclient session func (wc *WebClient) Quit() { wc.running = false diff --git a/v2/pkg/options/dialog.go b/v2/pkg/options/dialog/dialog.go similarity index 98% rename from v2/pkg/options/dialog.go rename to v2/pkg/options/dialog/dialog.go index 132949cea..394f88bb6 100644 --- a/v2/pkg/options/dialog.go +++ b/v2/pkg/options/dialog/dialog.go @@ -1,4 +1,4 @@ -package options +package dialog // OpenDialog contains the options for the OpenDialog runtime method type OpenDialog struct { diff --git a/v2/pkg/options/options.go b/v2/pkg/options/options.go index 0df0bf4b6..0c5d42c72 100644 --- a/v2/pkg/options/options.go +++ b/v2/pkg/options/options.go @@ -1,6 +1,7 @@ package options import ( + wailsruntime "github.com/wailsapp/wails/v2/internal/runtime" "github.com/wailsapp/wails/v2/pkg/menu" "log" "runtime" @@ -30,6 +31,8 @@ type App struct { Mac *mac.Options Logger logger.Logger `json:"-"` LogLevel logger.LogLevel + Startup func(*wailsruntime.Runtime) `json:"-"` + Shutdown func() `json:"-"` } // MergeDefaults will set the minimum default values for an application diff --git a/v2/pkg/parser/method.go b/v2/pkg/parser/method.go index e9602c543..3ba3b10c1 100644 --- a/v2/pkg/parser/method.go +++ b/v2/pkg/parser/method.go @@ -44,11 +44,6 @@ func (p *Parser) parseStructMethods(boundStruct *Struct) error { continue } - // We want to ignore Internal functions - if funcDecl.Name.Name == "WailsInit" || funcDecl.Name.Name == "WailsShutdown" { - continue - } - // If this method is not Public, ignore if string(funcDecl.Name.Name[0]) != strings.ToUpper((string(funcDecl.Name.Name[0]))) { continue diff --git a/v2/test/kitchensink/dialog.go b/v2/test/kitchensink/dialog.go index f1b14129d..144c83d1e 100644 --- a/v2/test/kitchensink/dialog.go +++ b/v2/test/kitchensink/dialog.go @@ -2,7 +2,7 @@ package main import ( "github.com/wailsapp/wails/v2" - "github.com/wailsapp/wails/v2/pkg/options" + "github.com/wailsapp/wails/v2/pkg/options/dialog" ) // Dialog struct @@ -18,16 +18,16 @@ func (l *Dialog) WailsInit(runtime *wails.Runtime) error { } // Open Dialog -func (l *Dialog) Open(options *options.OpenDialog) []string { +func (l *Dialog) Open(options *dialog.OpenDialog) []string { return l.runtime.Dialog.Open(options) } // Save Dialog -func (l *Dialog) Save(options *options.SaveDialog) string { +func (l *Dialog) Save(options *dialog.SaveDialog) string { return l.runtime.Dialog.Save(options) } // Message Dialog -func (l *Dialog) Message(options *options.MessageDialog) string { +func (l *Dialog) Message(options *dialog.MessageDialog) string { return l.runtime.Dialog.Message(options) } diff --git a/v2/test/kitchensink/frontend/src/pages/Dialog/Message/code.go b/v2/test/kitchensink/frontend/src/pages/Dialog/Message/code.go index 1655ca8e9..b69b09d13 100644 --- a/v2/test/kitchensink/frontend/src/pages/Dialog/Message/code.go +++ b/v2/test/kitchensink/frontend/src/pages/Dialog/Message/code.go @@ -1,10 +1,10 @@ package main import ( + "github.com/wailsapp/wails/v2/pkg/options/dialog" "io/ioutil" "github.com/wailsapp/wails/v2" - "github.com/wailsapp/wails/v2/pkg/options" ) type Notepad struct { @@ -21,7 +21,7 @@ func (n *Notepad) WailsInit(runtime *wails.Runtime) error { // successful save. func (n *Notepad) SaveNotes(notes string) (bool, error) { - selectedFile := n.runtime.Dialog.Save(&options.SaveDialog{ + selectedFile := n.runtime.Dialog.Save(&dialog.SaveDialog{ DefaultFilename: "notes.md", Filters: "*.md", }) diff --git a/v2/test/kitchensink/frontend/src/pages/Dialog/Open/code.go b/v2/test/kitchensink/frontend/src/pages/Dialog/Open/code.go index b8a4e56ba..95e9c9533 100644 --- a/v2/test/kitchensink/frontend/src/pages/Dialog/Open/code.go +++ b/v2/test/kitchensink/frontend/src/pages/Dialog/Open/code.go @@ -1,10 +1,10 @@ package main import ( + "github.com/wailsapp/wails/v2/pkg/options/dialog" "io/ioutil" "github.com/wailsapp/wails/v2" - "github.com/wailsapp/wails/v2/pkg/options" ) type Notepad struct { @@ -18,7 +18,7 @@ func (n *Notepad) WailsInit(runtime *wails.Runtime) error { func (n *Notepad) LoadNotes() (string, error) { - selectedFiles := n.runtime.Dialog.Open(&options.OpenDialog{ + selectedFiles := n.runtime.Dialog.Open(&dialog.OpenDialog{ DefaultFilename: "notes.md", Filters: "*.md", AllowFiles: true, diff --git a/v2/test/kitchensink/frontend/src/pages/Dialog/Save/code.go b/v2/test/kitchensink/frontend/src/pages/Dialog/Save/code.go index 1655ca8e9..b69b09d13 100644 --- a/v2/test/kitchensink/frontend/src/pages/Dialog/Save/code.go +++ b/v2/test/kitchensink/frontend/src/pages/Dialog/Save/code.go @@ -1,10 +1,10 @@ package main import ( + "github.com/wailsapp/wails/v2/pkg/options/dialog" "io/ioutil" "github.com/wailsapp/wails/v2" - "github.com/wailsapp/wails/v2/pkg/options" ) type Notepad struct { @@ -21,7 +21,7 @@ func (n *Notepad) WailsInit(runtime *wails.Runtime) error { // successful save. func (n *Notepad) SaveNotes(notes string) (bool, error) { - selectedFile := n.runtime.Dialog.Save(&options.SaveDialog{ + selectedFile := n.runtime.Dialog.Save(&dialog.SaveDialog{ DefaultFilename: "notes.md", Filters: "*.md", }) diff --git a/v2/test/kitchensink/go.mod b/v2/test/kitchensink/go.mod index 700e0e93e..65b0f2472 100644 --- a/v2/test/kitchensink/go.mod +++ b/v2/test/kitchensink/go.mod @@ -2,8 +2,6 @@ module test go 1.13 -require ( - github.com/wailsapp/wails/v2 v2.0.0-alpha -) +require github.com/wailsapp/wails/v2 v2.0.0-alpha replace github.com/wailsapp/wails/v2 v2.0.0-alpha => ../../../v2 diff --git a/v2/test/kitchensink/go.sum b/v2/test/kitchensink/go.sum index be47204b0..2c20aeaae 100644 --- a/v2/test/kitchensink/go.sum +++ b/v2/test/kitchensink/go.sum @@ -1,112 +1,89 @@ -github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= -github.com/Netflix/go-expect v0.0.0-20180615182759-c93bf25de8e8/go.mod h1:oX5x61PbNXchhh0oikYAH+4Pcfw5LKv21+Jnpr6r6Pc= -github.com/abadojack/whatlanggo v1.0.1 h1:19N6YogDnf71CTHm3Mp2qhYfkRdyvbgwWdd2EPxJRG4= -github.com/abadojack/whatlanggo v1.0.1/go.mod h1:66WiQbSbJBIlOZMsvbKe5m6pzQovxCH9B/K8tQB2uoc= -github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927/go.mod h1:h/aW8ynjgkuj+NQRlZcDbAbM1ORAbXjXX77sX7T289U= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= +github.com/gin-gonic/gin v1.6.3 h1:ahKqKTFpO5KTPHxWZjEdPScmYaGtLo8Y4DMHoEsnp14= github.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M= +github.com/go-playground/assert/v2 v2.0.1 h1:MsBgLAaY856+nPRTKrp3/OZK38U/wa0CcBYNjji3q3A= github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= -github.com/go-playground/colors v1.2.0/go.mod h1:miw1R2JIE19cclPxsXqNdzLZsk4DP4iF+m88bRc7kfM= +github.com/go-playground/locales v0.13.0 h1:HyWk6mgj5qFqCT5fjGBuRArbVDfE4hi8+e8ceBS/t7Q= github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= +github.com/go-playground/universal-translator v0.17.0 h1:icxd5fm+REJzpZx7ZfpaD876Lmtgy7VtROAbHHXk8no= github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= +github.com/go-playground/validator/v10 v10.2.0 h1:KgJ0snyC2R9VXYN2rneOtQcw5aHQB1Vv0sFl1UcHBOY= github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI= +github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee h1:s+21KNqlpePfkah2I+gwHF8xmJWRjooY+5248k6m4A0= github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= +github.com/gobwas/pool v0.2.0 h1:QEmUOlnSjWtnpRGHF3SauEiOsy82Cup83Vf2LcMlnc8= github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= +github.com/gobwas/ws v1.0.2 h1:CoAavW/wd/kulfZmSIBt6p24n4j7tHgNVCjsfHVNUbo= github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM= github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.5 h1:F768QJ1E9tib+q5Sc8MkdJi1RxLTbRcTf8LJV56aRls= github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.1 h1:q7AeDBpnBk8AogcD4DSag/Ukw/KV+YhzLj2bP5HvKCM= github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= -github.com/hinshun/vt10x v0.0.0-20180616224451-1954e6464174/go.mod h1:DqJ97dSdRW1W22yXSB90986pcOyQ7r45iio1KN2ez1A= github.com/imdario/mergo v0.3.11 h1:3tnifQM4i+fbajXKBHXWEH+KvNHqojZ778UH75j3bGA= github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/jackmordaunt/icns v1.0.0/go.mod h1:7TTQVEuGzVVfOPPlLNHJIkzA6CoV7aH1Dv9dW351oOo= +github.com/json-iterator/go v1.1.9 h1:9yzud/Ht36ygwatGx56VwCZtlI/2AD15T1X2sjSuGns= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= -github.com/kennygrant/sanitize v1.2.4/go.mod h1:LGsjYYtgxbetdg5owWB2mpgUL6e2nfw2eObZ0u0qvak= +github.com/klauspost/compress v1.10.3 h1:OP96hzwJVBIHYU52pVTI6CczrxPvrGfgqF9N5eTO0Q8= github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/leaanthony/clir v1.0.4 h1:Dov2y9zWJmZr7CjaCe86lKa4b5CSxskGAt2yBkoDyiU= github.com/leaanthony/clir v1.0.4/go.mod h1:k/RBkdkFl18xkkACMCLt09bhiZnrGORoxmomeMvDpE0= github.com/leaanthony/gosod v0.0.4/go.mod h1:nGMCb1PJfXwBDbOAike78jEYlpqge+xUKFf0iBKjKxU= -github.com/leaanthony/mewn v0.10.7/go.mod h1:CRkTx8unLiSSilu/Sd7i1LwrdaAL+3eQ3ses99qGMEQ= -github.com/leaanthony/slicer v1.4.0/go.mod h1:FwrApmf8gOrpzEWM2J/9Lh79tyq8KTX5AzRtwV7m4AY= -github.com/leaanthony/slicer v1.4.1/go.mod h1:FwrApmf8gOrpzEWM2J/9Lh79tyq8KTX5AzRtwV7m4AY= github.com/leaanthony/slicer v1.5.0/go.mod h1:FwrApmf8gOrpzEWM2J/9Lh79tyq8KTX5AzRtwV7m4AY= -github.com/leaanthony/spinner v0.5.3/go.mod h1:oHlrvWicr++CVV7ALWYi+qHk/XNA91D9IJ48IqmpVUo= -github.com/leaanthony/synx v0.1.0/go.mod h1:Iz7eybeeG8bdq640iR+CwYb8p+9EOsgMWghkSRyZcqs= -github.com/leaanthony/wincursor v0.1.0/go.mod h1:7TVwwrzSH/2Y9gLOGH+VhA+bZhoWXBRgbGNTMk+yimE= +github.com/leodido/go-urn v1.2.0 h1:hpXL4XnriNwQ/ABnpepYM/1vCLWNDfUNts8dX3xTG6Y= github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII= +github.com/matryer/is v1.4.0 h1:sosSmIWwkYITGrxZ25ULNDeKiMNzFSr4V/eqBQP0PeE= github.com/matryer/is v1.4.0/go.mod h1:8I/i5uYgLzgsgEloJE1U6xx5HkBQpAZvepWuujKwMRU= -github.com/matryer/try v0.0.0-20161228173917-9ac251b645a2/go.mod h1:0KeJpeMD6o+O4hW7qJOT7vyQPKrWmj26uf5wMc/IiIs= -github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= -github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= -github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.12 h1:wuysRhFDzyxgEmMf5xjvJ2M9dZoWAXNNr5LSBS7uHXY= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-runewidth v0.0.7/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 h1:ZqeYNhU3OHLH3mGKHDcjJRFFRrJa6eAM5H+CtDdOsPc= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 h1:Esafd1046DLDQ0W1YjYsBW+p8U2u7vzgW2SQVmlNazg= github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/olekukonko/tablewriter v0.0.4/go.mod h1:zq6QwlOf5SlnkVbMSr5EoBv3636FWnp+qbPhuoO21uA= -github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4 h1:49lOXmGaUpV9Fz3gd7TFZY106KVlPVa5jcYD1gaQf98= -github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4/go.mod h1:4OwLy04Bl9Ef3GJJCoec+30X3LQs/0/m4HFRt/2LUSA= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/sirupsen/logrus v1.4.1 h1:GL2rEmy6nsikmW0r8opw9JIRScdMF5hA8cOYLH7In1k= -github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= -github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.2.1/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/syossan27/tebata v0.0.0-20180602121909-b283fe4bc5ba/go.mod h1:iLnlXG2Pakcii2CU0cbY07DRCSvpWNa7nFxtevhOChk= github.com/tdewolff/minify v2.3.6+incompatible/go.mod h1:9Ov578KJUmAWpS6NeZwRZyT56Uf6o3Mcz9CEsg8USYs= -github.com/tdewolff/minify/v2 v2.9.5/go.mod h1:jshtBj/uUJH6JX1fuxTLnnHOA1RVJhF5MM+leJzDKb4= github.com/tdewolff/parse v2.3.4+incompatible/go.mod h1:8oBwCsVmUkgHO8M5iCzSIDtpzXOT0WXX9cWhz+bIzJQ= -github.com/tdewolff/parse/v2 v2.5.3/go.mod h1:WzaJpRSbwq++EIQHYIRTpbYKNA3gn9it1Ik++q4zyho= github.com/tdewolff/test v1.0.6/go.mod h1:6DAvZliBAAnD7rhVgwaM7DE5/d9NMOAJ09SqYqeK4QE= +github.com/ugorji/go v1.1.7 h1:/68gy2h+1mWMrwZFeD1kQialdSzAb432dtpeJ42ovdo= github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw= +github.com/ugorji/go/codec v1.1.7 h1:2SvQaVZ1ouYrrKKwoSk2pzd4A9evlKJb9oTL+OaLUSs= github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY= -github.com/wailsapp/wails v1.8.0 h1:gnQhpwoGM8s2GD5PZrgMKU1PO3pQ9cdKKJgwtkNz2f4= -github.com/wailsapp/wails v1.8.0/go.mod h1:XFZunea+USOCMMgBlz0A0JHLL3oWrRhnOl4baZlRpxo= -github.com/wailsapp/wails v1.9.1 h1:ez/TK8YpU9lvOZ9nkgzUXsWu+xOPFVO57zTy0n5w3hc= github.com/xyproto/xpm v1.2.1/go.mod h1:cMnesLsD0PBXLgjDfTDEaKr8XyTFsnP1QycSqRw7BiY= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -golang.org/x/crypto v0.0.0-20190123085648-057139ce5d2b/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20180606202747-9527bec2660b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181228144115-9a3f9b0469bb/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -123,12 +100,14 @@ golang.org/x/tools v0.0.0-20200902012652-d1954cc86c82/go.mod h1:Cj7w3i3Rnn0Xh82u golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gopkg.in/AlecAivazis/survey.v1 v1.8.4/go.mod h1:iBNOmqKz/NUbZx3bA+4hAGLRC7fSK7tgtVDT4tB22XA= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b h1:QRR6H1YWRnHb4Y/HeNFCTJLFVxaq6wH4YuVdsUOr75U= gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v3 v3.0.0-20190709130402-674ba3eaed22/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +nhooyr.io/websocket v1.8.6 h1:s+C3xAMLwGmlI31Nyn/eAehUlZPwfYZu2JXM621Q5/k= nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= diff --git a/v2/test/runtime/runtime.go b/v2/test/runtime/runtime.go index c03fd348c..d707c9af3 100644 --- a/v2/test/runtime/runtime.go +++ b/v2/test/runtime/runtime.go @@ -1,10 +1,10 @@ package main import ( + "github.com/wailsapp/wails/v2/pkg/options/dialog" "time" "github.com/wailsapp/wails/v2" - "github.com/wailsapp/wails/v2/pkg/options" ) // RuntimeTest to test the runtimes @@ -75,7 +75,7 @@ func (r *RuntimeTest) SetColour(colour int) { // OpenFileDialog will call the Runtime.Dialog.OpenDialog method requesting File selection func (r *RuntimeTest) OpenFileDialog(title string, filter string) []string { - dialogOptions := &options.OpenDialog{ + dialogOptions := &dialog.OpenDialog{ Title: title, Filters: filter, AllowFiles: true, @@ -85,7 +85,7 @@ func (r *RuntimeTest) OpenFileDialog(title string, filter string) []string { // OpenDirectoryDialog will call the Runtime.Dialog.OpenDialog method requesting File selection func (r *RuntimeTest) OpenDirectoryDialog(title string, filter string) []string { - dialogOptions := &options.OpenDialog{ + dialogOptions := &dialog.OpenDialog{ Title: title, Filters: filter, AllowDirectories: true, @@ -95,7 +95,7 @@ func (r *RuntimeTest) OpenDirectoryDialog(title string, filter string) []string // OpenDialog will call the Runtime.Dialog.OpenDialog method requesting both Files and Directories func (r *RuntimeTest) OpenDialog(title string, filter string) []string { - dialogOptions := &options.OpenDialog{ + dialogOptions := &dialog.OpenDialog{ Title: title, Filters: filter, AllowDirectories: true, @@ -106,7 +106,7 @@ func (r *RuntimeTest) OpenDialog(title string, filter string) []string { // OpenDialogMultiple will call the Runtime.Dialog.OpenDialog method allowing multiple selection func (r *RuntimeTest) OpenDialogMultiple(title string, filter string) []string { - dialogOptions := &options.OpenDialog{ + dialogOptions := &dialog.OpenDialog{ Title: title, Filters: filter, AllowDirectories: true, @@ -118,7 +118,7 @@ func (r *RuntimeTest) OpenDialogMultiple(title string, filter string) []string { // OpenDialogAllOptions will call the Runtime.Dialog.OpenDialog method allowing multiple selection func (r *RuntimeTest) OpenDialogAllOptions(filter string, defaultDir string, defaultFilename string) []string { - dialogOptions := &options.OpenDialog{ + dialogOptions := &dialog.OpenDialog{ DefaultDirectory: defaultDir, DefaultFilename: defaultFilename, Filters: filter, @@ -134,7 +134,7 @@ func (r *RuntimeTest) OpenDialogAllOptions(filter string, defaultDir string, def // SaveFileDialog will call the Runtime.Dialog.SaveDialog method requesting a File selection func (r *RuntimeTest) SaveFileDialog(title string, filter string) string { - dialogOptions := &options.SaveDialog{ + dialogOptions := &dialog.SaveDialog{ Title: title, Filters: filter, } @@ -143,7 +143,7 @@ func (r *RuntimeTest) SaveFileDialog(title string, filter string) string { // SaveDialogAllOptions will call the Runtime.Dialog.SaveDialog method allowing multiple selection func (r *RuntimeTest) SaveDialogAllOptions(filter string, defaultDir string, defaultFilename string) string { - dialogOptions := &options.SaveDialog{ + dialogOptions := &dialog.SaveDialog{ DefaultDirectory: defaultDir, DefaultFilename: defaultFilename, Filters: filter,