Introduction
The runtime is a library that provides utility methods for your application. There is both a Go and Javascript runtime and the aim is to try and keep them at parity where possible.
The Go Runtime is available through importing github.com/wailsapp/wails/v2/pkg/runtime
. All methods in this package
take a context as the first parameter. This context should be obtained from the OnStartup
or OnDomReady hooks.
Whilst the context will be provided to the OnStartup method, there's no guarantee the runtime will work in this method as the window is initialising in a different thread. If you wish to call runtime methods at startup, use OnDomReady.
The Javascript library is available to the frontend via the window.runtime
map. There is a runtime package generated when using dev
mode that provides Typescript declarations for the runtime. This should be located in the wailsjs
directory in your
frontend directory.
Hide
Go Signature: Hide(ctx context.Context)
Hides the application.
On Mac, this will hide the application in the same way as the Hide
menu item in standard Mac applications.
This is different to hiding the window, but the application still being in the foreground.
For Windows and Linux, this is currently the same as WindowHide
.
Show
Go Signature: Show(ctx context.Context)
Shows the application.
On Mac, this will bring the application back into the foreground.
For Windows and Linux, this is currently the same as WindowShow
.
Quit
Go Signature: Quit(ctx context.Context)
Quits the application.
Environment
Go Signature: Environment(ctx context.Context) EnvironmentInfo
Returns details of the current environment.
EnvironmentInfo
type EnvironmentInfo struct {
BuildType string // Either "production", "debug" or "dev"
}