- 删除通用 desktop target,重命名 platform targets 为简短形式 (desktop-mac/win/linux)
- 构建产物文件名统一为 nex-{os}-{arch}[.exe] 格式
- Windows 托盘图标使用 .ico 格式(运行时按平台选择)
- Windows 原生对话框使用 user32.MessageBoxW 替代 msg * 命令
- 更新 README.md 和 package-macos.sh 中的引用
- 添加单元测试覆盖 MessageBoxW 封装和图标选择逻辑
- 同步更新 desktop-app spec 规范文档
1.8 KiB
1.8 KiB
1. Makefile 重构
- 1.1 删除通用
desktoptarget 及其相关.PHONY声明 - 1.2 将
desktop-darwin重命名为desktop-mac,产物文件名改为nex-mac-arm64和nex-mac-amd64 - 1.3 将
desktop-windows重命名为desktop-win,产物文件名改为nex-win-amd64.exe - 1.4 将
desktop-linux产物文件名改为nex-linux-amd64 - 1.5 更新
.PHONY声明和alltarget(如引用了旧名称)
2. Windows 原生对话框
- 2.1 在
backend/cmd/desktop/main.go中添加 Windows 平台的user32.MessageBoxW调用封装(syscall.NewLazyDLL+syscall.StringToUTF16Ptr),在showError/showAbout的 Windowsruntime.GOOS分支内直接调用 - 2.2 替换
showError函数的 Windows 分支,使用MessageBoxW替代msg * - 2.3 替换
showAbout函数的 Windows 分支,使用MessageBoxW替代msg *
3. 系统托盘图标修复
- 3.1 修改
setupSystray函数中的图标加载逻辑,根据runtime.GOOS在 Windows 上加载assets/icon.ico,其他平台加载assets/icon.png
4. 文档和脚本更新
- 4.1 更新
README.md中的构建命令引用(desktop-darwin→desktop-mac,desktop-windows→desktop-win,desktop-linux保持不变或改为desktop-linux) - 4.2 更新
scripts/build/package-macos.sh中对desktop-darwin的引用
5. 测试验证
- 5.1 为
showError/showAbout的 WindowsMessageBoxW封装编写单元测试(验证参数传递和调用正确性) - 5.2 为图标加载的平台选择逻辑编写单元测试(验证 Windows 选
.ico,其他选.png) - 5.3 运行
make desktop-win在 Windows 上验证:产物有.exe后缀、双击无控制台窗口、托盘图标正常显示、错误对话框使用原生样式