Documentation
¶
Overview ¶
Package desktop contains the Wails desktop application wrapper for Pando. It renders the Pando web UI inside a native WebView window instead of opening an external browser. The desktop binary is compiled separately and embedded into the main pando binary via go:embed in embed_binary.go.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var DesktopBinary []byte
DesktopBinary is the embedded pre-compiled pando-desktop binary for non-macOS builds. Populated by running `make desktop-embed`.
var DesktopBundle embed.FS
Functions ¶
func Launch ¶ added in v0.267.0
Launch starts the desktop wrapper and blocks until the desktop window exits.
Resolution order:
- A pando-desktop wrapper shipped on disk next to the running executable (packaged .app/.pkg installs) — launched in place, preserving its signature & notarization.
- On macOS, an embedded Pando.app bundle extracted to a temp dir.
- The raw embedBin bytes (the compiled pando-desktop produced by `make desktop-embed`) extracted to a temp dir.
embedBin may be nil/empty when the wrapper is shipped on disk instead of embedded.
Types ¶
type App ¶
type App struct {
// contains filtered or unexported fields
}
App holds the Wails desktop application state.
func (*App) GetPandoURL ¶ added in v0.267.0
GetPandoURL returns the configured Pando URL. Exposed as Wails binding.
func (*App) IsSimpleMode ¶ added in v0.267.0
IsSimpleMode returns whether simple mode is active. Exposed as Wails binding.
func (*App) OnDomReady ¶
OnDomReady is called by Wails when the DOM is ready. We navigate the webview to the Pando URL.
func (*App) SetWindowFocused ¶ added in v0.267.0
SetWindowFocused is called from JavaScript when the window gains or loses focus. This controls whether OS notifications are shown. Exposed as Wails binding.
func (*App) ToggleWindow ¶ added in v0.267.0
func (a *App) ToggleWindow()
ToggleWindow shows the window if hidden, hides it if visible. Exposed as Wails binding.