mirror of
https://github.com/shadowsocks/ShadowsocksX-NG.git
synced 2026-10-29 21:53:43 +00:00
17c9f15928e9dccc38d5d916d6af2dbe360cd698
Keyboard-launcher launches (Raycast/Spotlight Enter) left the LSUIElement app unforegrounded with a missing Dock icon until Mission Control forced a refresh. Investigation across real-machine rounds (recorded in the ADR-0017 supplements) pinned three cooperating causes: - The launch activation retry never started at launch: the workspace window's participation events (anchor attach / occlusion / key) could all miss the launch moment when content installed before the window became visible and the visibility notification fired before the anchor attached. A deferred visibility rescan plus re-armable chain (until truly settled) close this gap. - NSApp.isActive can report an activation illusion while the menu bar still belongs to the previous frontmost app, so the settle check now requires both isActive and menu bar ownership. - A same-turn accessory->regular bounce is coalesced away by the system; forced activation is a three-hop sequence with real settle delays (accessory -> 0.1s -> regular -> 0.15s -> activate), which re-registers the app with WindowServer/Dock and reclaims the menu bar. Each acting attempt also re-asserts makeKeyAndOrderFront and orderFrontRegardless as a visible-layer fallback. Diagnostics: launchActivationRetry and windowAnchorAttached events (unified-log category "window") record per-attempt facts (activation, local policy, frontmost app, menu bar owner, space, window visibility); user-environment facts stay out of shared diagnostic reports.
ShadowsocksX-NG
🚧 重新实现进行中 —— 本仓库正在使用现代技术栈重写 ShadowsocksX-NG macOS 客户端。
新实现位于 ShadowsocksX-NG2/,面向 macOS 15+ / Apple Silicon(arm64)。外部二进制使用上游发布产物,不再通过 git 子模块在仓库内构建。
开发入口
- 首次构建与常用命令
- 开发指南:统一验证、测试证据、代码风格工具与 Git hooks。
- 工程与专题文档:源码布局、供应链与签名、规则快照、配置说明。
- 术语表与架构决策记录(ADR);文档语言约定见开发指南。
旧版归档
旧版工程源码已从本仓库移除,归档在 shadowsocks/ShadowsocksX-NG 的 legacy-v1 分支,仅供参考,不保证可构建。旧版功能说明与使用文档见 legacy-v1 的 README。
Languages
Swift
95.8%
Python
2.5%
Shell
1.4%
C
0.3%