mirror of
https://github.com/wavetermdev/wails.git
synced 2026-08-05 13:53:43 -07:00
feat: added OpenFile
This commit is contained in:
+15
-4
@@ -28,7 +28,7 @@ func (i *internalMethods) processCall(callData *callData) (interface{}, error) {
|
||||
|
||||
group := splitCall[0]
|
||||
switch group {
|
||||
case "browser":
|
||||
case "Browser":
|
||||
return i.processBrowserCommand(splitCall[1], callData.Data)
|
||||
default:
|
||||
return nil, fmt.Errorf("Unknown internal command group '%s'", group)
|
||||
@@ -37,7 +37,7 @@ func (i *internalMethods) processCall(callData *callData) (interface{}, error) {
|
||||
|
||||
func (i *internalMethods) processBrowserCommand(command string, data interface{}) (interface{}, error) {
|
||||
switch command {
|
||||
case "openURL":
|
||||
case "OpenURL":
|
||||
url := data.(string)
|
||||
// Strip string quotes. Credit: https://stackoverflow.com/a/44222648
|
||||
if url[0] == '"' {
|
||||
@@ -46,9 +46,20 @@ func (i *internalMethods) processBrowserCommand(command string, data interface{}
|
||||
if i := len(url)-1; url[i] == '"' {
|
||||
url = url[:i]
|
||||
}
|
||||
i.log.Debugf("Calling browser.openURL with '%s'", url)
|
||||
i.log.Debugf("Calling Browser.OpenURL with '%s'", url)
|
||||
return nil, i.browser.OpenURL(url)
|
||||
case "OpenFile":
|
||||
filename := data.(string)
|
||||
// Strip string quotes. Credit: https://stackoverflow.com/a/44222648
|
||||
if filename[0] == '"' {
|
||||
filename = filename[1:]
|
||||
}
|
||||
if i := len(filename)-1; filename[i] == '"' {
|
||||
filename = filename[:i]
|
||||
}
|
||||
i.log.Debugf("Calling Browser.OpenFile with '%s'", filename)
|
||||
return nil, i.browser.OpenFile(filename)
|
||||
default:
|
||||
return nil, fmt.Errorf("Unknown browser command '%s'", command)
|
||||
return nil, fmt.Errorf("Unknown Browser command '%s'", command)
|
||||
}
|
||||
}
|
||||
@@ -18,3 +18,8 @@ func newRuntimeBrowser() *RuntimeBrowser {
|
||||
func (r *RuntimeBrowser) OpenURL(url string) error {
|
||||
return browser.OpenURL(url)
|
||||
}
|
||||
|
||||
// OpenFile opens the given file in the system's default browser
|
||||
func (r *RuntimeBrowser) OpenFile(filePath string) error {
|
||||
return browser.OpenFile(filePath)
|
||||
}
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -293,12 +293,17 @@
|
||||
/************************* Browser **************************/
|
||||
|
||||
|
||||
function openURL(url) {
|
||||
return systemCall("browser.openURL", url);
|
||||
function OpenURL(url) {
|
||||
return systemCall("Browser.OpenURL", url);
|
||||
}
|
||||
|
||||
window.wails.browser = {
|
||||
openURL
|
||||
function OpenFile(filename) {
|
||||
return systemCall("Browser.OpenFile", filename);
|
||||
}
|
||||
|
||||
window.wails.Browser = {
|
||||
OpenURL,
|
||||
OpenFile,
|
||||
}
|
||||
|
||||
/************************* Logging **************************/
|
||||
|
||||
Reference in New Issue
Block a user