5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-07 04:22:26 +08:00
wails/v3/plugins/experimental/single_instance/plugin_darwin.go
2024-04-14 21:41:33 +10:00

25 lines
622 B
Go

//go:build darwin
package single_instance
/*
#cgo CFLAGS: -mmacosx-version-min=10.13 -x objective-c
#cgo LDFLAGS: -framework Cocoa -framework AppKit -mmacosx-version-min=10.13
#import <AppKit/AppKit.h>
void activateApplicationWithProcessID(int pid) {
NSRunningApplication *app = [NSRunningApplication runningApplicationWithProcessIdentifier:pid];
if (app != nil) {
[app unhide];
[app activateWithOptions:(NSApplicationActivateAllWindows | NSApplicationActivateIgnoringOtherApps)];
}
}
*/
import "C"
func (p *Plugin) activeInstance(pid int) error {
C.activateApplicationWithProcessID(C.int(pid))
return nil
}