Files

44 lines
842 B
Go
Raw Permalink Normal View History

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
}
}