Files
MyGoNavi/internal/nativewindow/activation_policy_darwin.go
Syngnat fa9d21be8b feat(native-window): 支持标签页拖出为原生独立窗口
- 支持 SQL、数据和结果标签拖出到跨显示器原生窗口
- 通过受认证 loopback bridge 复用主进程后端与状态
- 支持子窗口继续拆窗、聚焦、关闭、还原与异常退出恢复
- 补充多窗口协议、状态同步和跨平台回归测试
2026-07-16 20:25:08 +08:00

32 lines
815 B
Go

//go:build darwin && cgo
package nativewindow
/*
#cgo CFLAGS: -x objective-c
#cgo LDFLAGS: -framework Cocoa
#import <Cocoa/Cocoa.h>
#import <dispatch/dispatch.h>
static void applyDetachedAccessoryActivationPolicy(void *unused) {
(void)unused;
NSApplication *application = [NSApplication sharedApplication];
[application setActivationPolicy:NSApplicationActivationPolicyAccessory];
[application activateIgnoringOtherApps:YES];
}
static void setDetachedAccessoryActivationPolicy(void) {
if ([NSThread isMainThread]) {
applyDetachedAccessoryActivationPolicy(NULL);
return;
}
dispatch_sync_f(dispatch_get_main_queue(), NULL, applyDetachedAccessoryActivationPolicy);
}
*/
import "C"
func setDetachedAccessoryActivationPolicy() {
C.setDetachedAccessoryActivationPolicy()
}