mirror of
https://github.com/wavetermdev/wails.git
synced 2026-08-05 13:53:43 -07:00
Add BrowserOpenURL and BrowserOpenFile to App.
Better WML assets for demo Fix dialog responses. Add `wml-openurl` Rename: data-wml -> wml Fix Alpha Feedback URL
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
package application
|
||||
|
||||
import (
|
||||
"github.com/pkg/browser"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
const (
|
||||
BrowserOpenURL = 0
|
||||
)
|
||||
|
||||
var browserMethods = map[int]string{
|
||||
BrowserOpenURL: "OpenURL",
|
||||
}
|
||||
|
||||
func (m *MessageProcessor) processBrowserMethod(method int, rw http.ResponseWriter, _ *http.Request, _ Window, params QueryParams) {
|
||||
|
||||
args, err := params.Args()
|
||||
if err != nil {
|
||||
m.httpError(rw, "Unable to parse arguments: %s", err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
switch method {
|
||||
case BrowserOpenURL:
|
||||
url := args.String("url")
|
||||
if url == nil {
|
||||
m.Error("OpenURL: url is required")
|
||||
return
|
||||
}
|
||||
err := browser.OpenURL(*url)
|
||||
if err != nil {
|
||||
m.Error("OpenURL: %s", err.Error())
|
||||
return
|
||||
}
|
||||
m.ok(rw)
|
||||
m.Info("Runtime Call:", "method", "Browser."+browserMethods[method], "url", *url)
|
||||
default:
|
||||
m.httpError(rw, "Unknown browser method: %d", method)
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user